Expand description
config, export-snapshot (FR10), backup-key — administrative commands. Config surfaces the TP8
(c)/(b) treatment + the pre-2025 lot method; export/backup arrive in Task 15.
Structs§
- Export
Report - Outcome of the CLI
export_snapshotwrapper: the written snapshot path plus the count of UNRESOLVED Hard blockers (severity() == Hard) in the projection. Any Hard blocker gates EVERY tax year (compute_tax_yearshort-circuits on the projection-wide first Hard blocker), sounresolved_hard > 0means every exported Form 8949 / Schedule D / projection CSV is INFORMATIONAL, not final — theExportSnapshotmain.rs arm warns on stderr accordingly. A fully-resolved ledger yields0and no warning. Advisory blockers (incl.PseudoReconcileActive,SelfTransferInboundZeroBasis) never count. - IrsPdf
Report - Outcome of
export_irs_pdf: the written PDF paths, the unresolved-Hard-blocker count (same INFORMATIONAL disclosure asexport-snapshot), whether the fill was watermarked (pseudo-active), the count of rows that MIGHT belong on a separate 1099-DA-reported 8949 (Box G/H/J/K — the [I5] advisory), and the SP2 packet (Schedule SE + Form 8283 + Form 1040 cap-gains) with the advisories each one drives.
Functions§
- backup_
key - §8: export the passphrase-protected key (escape hatch; HIGH-security write).
- export_
irs_ pdf export-irs-pdf: fill the OFFICIAL IRS PDFs fortax_yearand write them (owner-only) toout_dir. The packet is Form 8949 + Schedule D (always applicable) plus — when applicable and selected — Schedule SE (SE income ≥ $400), Form 8283 (donations), and Form 1040 cap-gains (reportable digital-asset activity). The form data is REUSED from the projection (form_8949/schedule_d/form_8283/compute_se_tax) — nothing capital-gains is recomputed; the SE §1401 figure is computed here from the year’s storedTaxProfile. Same pseudo-active attestation gate asexport-snapshot: checked FIRST, so a refused export leavesout_diruntouched; a pseudo fill is additionally DRAFT-watermarked.- export_
pseudo_ active - Probe: would an export be gated?
truewhen the projection is pseudo-active (a synthetic default contributes). Used by theexport-snapshotCLI arm to decide whether to PROMPT for the attestation phrase; the authoritative gate lives insideexport_snapshotitself. Kept in the library so main.rs stays a thin dispatch (no session-open / projection business logic in the binary). - export_
snapshot - FR10 / NFR2 exception: decrypted SQLite image (via the store) + the projected ledger as CSV.
When
tax_yearisSome(y), the per-tax-year Form 8949 + Schedule D CSVs are also written, year-scoped toy(P2-B); whenNone, only the all-years CSVs are written. - set_
config - Persist a new TP8 fee treatment (None = leave unchanged), then return the resulting config.
- set_
pre2025_ method - Persist the pre-2025 lot identification method and attestation flag, then return the resulting config.
- show_
config