Deduction V2 — progress 2026-07-22
Delivery / Program Management — periodic status report.
health:carries the delivery-health status; the doc-lifecyclestatus:stays in the linter enum (active).
Progress
progress_done_days: 13 · progress_pct: 40 · progress_total_days: 32.5
Denominator ticked 29 → 30 → 32.5 via two additions today; no completed work changed (still 13 done, Part 1 engine), so 45% → 40% is purely the larger denominator.
- T8 (BIF-9015, +1 md) — engine-hardening follow-up to the stale-hold sweeper (T6): make
wa_balance_holds.held_atNOT NULL(with backfill) + a sweeper safety net, so aheldrow with NULLheld_atcan't silently leak its reserve (QA gap analysis §3.8). BE 0.5 + QA 0.5. - M6 (BIF-9016, +2.5 md) — PRD DED-S03 manual "trigger settle daily": a modpanel
account-detail button → hub-service → hub-core
SettleWaHoldsWorker. The engine already supports re-running settlement; this adds the operator-facing trigger. BE 1.5 + FE 0.5 + QA 0.5.
Both not started. Effort now: BE 23 · FE 3 · QA 6.5 = 32.5 md. Supersedes the 2026-07-21 entry (13 / 29).
Evidence
- T8 → BIF-9015 (relates BIF-8745); M6 → BIF-9016 (DED-S03; relates BIF-8744). Both
To Do, Sprint 21464, Epic BIF-8644. - Effort owner:
rfcs/deduction-v2.task-breakdown.md(T8 + M6; grand total 32.5 md). - T8 source:
documentations/deduction-v2-testcases-gap-analysis.md§3.8. - Also this pass: the
wa_hold_settlementenablement docs (runbook, RFC Decision 6, task-breakdown T1) were corrected to the as-builtServices::Billing::FeatureFlagmechanism (the RFC's two-tierServices::Preference∨extrasdesign was never shipped).
Lowlights & blockers
Unchanged from 2026-07-21: QA (now 6.5 md) not started; M0 edits shipped
money-path code; M4 (chat FE) unverified (hub repo not checked out); governance gate (RFC
in-review → approved, PRD refresh) still open, PM-owned, not blocking engineering.