| name | prove |
| description | Prove the job for this engagement depth (books scorecard or full QC). |
| disable-model-invocation | true |
/prove
Depth-scoped prove — not always year-end QC.
Do this
- Read
engagement_state.json → engagement_type (default bookkeeping_only).
- Load
shared/runtime-brief.md · references/depth_gates.json.
- Refresh HTML pack (required gate):
python3 scripts/generate_html_report.py <client>
- Branch:
A — bookkeeping_only (default)
python3 scripts/depth_gates.py <client> --strict
Required: register · txns · journals · bank recon 0 · prelim TB · outputs/*_pack.html.
Optional: Beancount export · Fava (explore only — not the handoff).
On green: status: done · tell user open the HTML pack path · “Books for [period] are ready.”
Do not open full QC/FS unless user upgrades depth.
B — year_end / compilation / year_end_tax
quality-review then depth_gates.py --strict (ATB + FS + QC A + HTML).
- Lock via
finalise-accounts only after user confirms.
- Optional: export Beancount · Fava. Tax only for
year_end_tax.
Done when: depth_gates --strict green; user message points at HTML pack, not a list of .md files.
See shared/slash-surface.md · scripts/depth_gates.py.