The planning session read plan/served.md, every design document and the five branches the owner paused on 2026-10-27 against main (44ee4083), with dry-run merges touching no branch. plan/2026-10-28_DRIFT_REPORT.md lists every divergence and judges every recorded departure (all kept; three owed back; one needs a decision: P6 made ledger-store depend on ledger-import). The plan: section 0 "What changed on 2026-10-28"; 8.0.1 and the unit Status lines name S4.4, S5, S6, S7 and P6 as built but unmerged; 8.0.2 records the destination (D-56: the installed app, P11a starts now) and the resume order with the known conflicts (the shared documents.rs test file, the types.rs appends, P6 retaking schema 18, the law numbers 34 to 37); 8.0.3 lists the names the EM approved during the wave; P11a gains step 0 (the macOS and Windows keyring stores, the Windows data root and pipes, a cross-platform CI build: today the agent path runs on Linux alone); Q-5 is due and Q-8 asks whether D-47 to D-54 stand; the Landlock sentences in section 2 and server.toml are struck. STATUS.md and HANDOFF.md say where things stand and how to resume; roadmap.md and gui.md are rewritten to today. The docs lose their stale facts: 122 tools, 2,700 tests, the parity floor at 21 with the P4b notes the slices never wrote, the ten crates and their dependency graph (jiff added to the core's allowed list), the cutover of 2026-10-20 recorded in capability-parity.md and parallel-run.md, the P4b S1 law and its two Kani harnesses added to verification.md (law 34), the proof counts (51 and 9), and README, the site and install.sh honest about macOS (the viewer runs; connecting an agent waits for P11a's keyring store, and the installer now says so instead of failing). just check on main at44ee4083: exit 0 (167 suites, 2,871 passed, 0 failed, 7 ignored, the server-only build clean). No code changed. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HS8WZziDnyxunC23MUxrLp
49 lines
2.2 KiB
Markdown
49 lines
2.2 KiB
Markdown
# Parallel-run readiness
|
|
|
|
> **Historical (2026-10-28).** The run happened; the books cut over on
|
|
> 2026-10-20 (P2 slice 9, `plan/STATUS.md`): the Google Sheet is frozen
|
|
> as of 2026-10-11, its final comparison (`verify-sheet`) is a filed
|
|
> workpaper, and the books are the system of record. Kept as the record
|
|
> of how cutover was decided. The counts below are of 2026-10-11.
|
|
|
|
The Google Sheet stays the system of record until the parallel run passes
|
|
and the owner explicitly approves cutover. This doc is the plan; the run
|
|
itself needs the owner's go-ahead.
|
|
|
|
## Prerequisites (all met)
|
|
|
|
- Capability parity 12 of 12 rows covered (`docs/capability-parity.md`).
|
|
- Engine semantics verified: 70 workspace tests, property tests, mutation
|
|
testing, 11.5M fuzz executions with zero crashes.
|
|
- Storage: hash-chained JSONL journal (source of truth), SQLite as
|
|
disposable projection with auto-rebuild, content-addressed blob store.
|
|
- Export: CSV/JSON/XLSX/IIF for CPA handoff and QuickBooks Desktop.
|
|
|
|
## The run
|
|
|
|
1. **Duration:** one full calendar month.
|
|
2. **Dual entry:** every transaction goes into BOTH the Sheet and
|
|
wanderbooks (via the MCP tools). Receipts attach in both.
|
|
3. **Month-end diff:** export trial balance, P&L, balance sheet, and cash
|
|
flow from wanderbooks (XLSX); compare against the Sheet's tabs.
|
|
Every line must match to the cent.
|
|
4. **Discrepancy protocol:** any mismatch is investigated before the next
|
|
month starts. If the engine is wrong, fix the engine (with a test).
|
|
If the Sheet is wrong, note it — the Sheet is the record until cutover.
|
|
5. **Cutover:** only after a clean month AND the owner's explicit approval.
|
|
Cutover means: the Sheet becomes read-only history; wanderbooks becomes
|
|
the system of record. The journal's git backup becomes the archive.
|
|
|
|
## What the agent does during the run
|
|
|
|
- Daily: `books.digest` review of what was recorded.
|
|
- Weekly: trial-balance export, eyeball against the Sheet.
|
|
- Month-end: full four-statement export + line-by-line diff.
|
|
- Every discrepancy gets a written explanation before proceeding.
|
|
|
|
## Rollback
|
|
|
|
If the run fails: the Sheet never stopped being the record. Delete the
|
|
wanderbooks data dir, fix the issues, restart the month. No data loss —
|
|
the Sheet has everything.
|