Skip to content

Add tax profile gap detection and annual summary #100

Description

@codeforester

Goal

Build the second TaxBuddy slice after #99: infer expected tax sources/forms, surface missing documents, and produce an annual readiness summary from indexed tax documents.

Dependencies

Decision

The first summary should be a tax readiness picture, not a tax filing engine. It should answer: what documents are present, what forms/sources are expected, which documents are missing or waived, and what areas need user review. A numeric tax-liability estimate should be deferred until a separate issue defines jurisdiction-specific calculation rules and disclaimers.

Scope

  • Add or complete tax_sources, tax_profile, property_assets, and tax_form_gaps storage, or the normalized equivalents approved by Document the TaxBuddy layer in BankBuddy #98.
  • Infer source records from imported documents, including source name, source type, jurisdiction, expected form types, active/inactive state, and account suffixes when available.
  • Add explicit user override commands for sources/forms when inference is incomplete, for example adding, deactivating, or waiving an expected source/form.
  • Generate annual gap rows for expected documents by tax year.
  • Add taxbuddy profile show --year YEAR, taxbuddy profile sources, and taxbuddy profile gaps --year YEAR.
  • Add taxbuddy summary --year YEAR with document inventory, missing/pending/waived forms, jurisdiction split, and review notes.
  • Include US and India-ready shape in the model, but keep the first rules data-driven and easy to extend.

Acceptance Criteria

  • Gap detection never silently fabricates certainty. Ambiguous expected forms are marked for review.
  • The user can mark a missing expected document as waived or a source as inactive without deleting history.
  • The annual summary is deterministic and generated from SQLite state, not a cached aggregate table.
  • CLI output avoids sensitive identifiers beyond masked suffixes.
  • Tests cover source inference, manual overrides, gap generation, summary output, inactive sources, waived gaps, and empty-year behavior.
  • Documentation makes clear that this is organization/readiness support, not tax advice or return preparation.
  • ./tests/validate.sh passes before PR review.

Out of Scope

  • Numeric tax liability estimation.
  • Filing integration with TurboTax, IRS, Indian tax portals, or CPA tools.
  • Web UI or spouse access.
  • OCR for scanned documents.

Source Context

Derived from docs/money_buddy_summary_and_action_items.md, sections 4.2, 4.6, 4.7, 4.8, and 9.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or product improvement

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions