CDP Sprint 2 — Jira reconciliation pass-01 (2026-07-23)
Board: sprint 21484 (CDP 26Q3 Sprint 2) · Window: 2026-07-21 → 2026-08-04 · day 3 of 14.
Engine: qontak-docs @ 7bfdc11 (past 30d8080 discipline-resolution fix). Worklist:
5 deterministic / 9 editorial findings over 54 issues.
Flow vitals (baseline). 54 issues — 35 new / 16 indeterminate / 3 done. WIP 16. Done-since: n/a (first pass on this board). Oldest in-progress: TF-3283 (Jovi, 29d, Export FE) & TF-3289 (Jovi, 29d, Export FE), then TF-3409 (berlianto, 23d, Legacy-Notes BE). This is the first pass on board 21484; Sprint 1 ran on a different board, so there is no meaningful cross-board count delta — treat these as the Sprint 2 baseline, not drift.
Framing — the plan is self-declared provisional. Sprint-2 doc lines 29–35 state only Team
Owner's rows are reconciled to Sprint 1's pass-11; every other lane still reflects pass-10 and
"needs a full sprint-planner rederivation before being treated as current." Accordingly this
pass separates board drift (plan was right, board moved → a finding) from plan staleness
(plan was never rederived → routed to sprint-planner, not recorded as drift). The sparse board
presence of P1/P2 critical-path items below is staleness, not drift.
Re-tested carryover findings (Sprint 1 ledger → Sprint 2)
| F-id | Type | Verdict this pass | Evidence |
|---|---|---|---|
| F-1 | coverage-gap | ✅ CLOSED | Legacy-Activity-Logs Tasks 3–9 (TF-3466–3472, all 7) now in sprint 21484 under TF-3182; Create-Ticket web TF-3426/TF-3427 present under TF-3359. TF-3428 does not exist (the web track was 2 FE tickets, not 3 — the "TF-3428" in the S1 ledger was a mis-cite). The board-scoping gap that kept F-1 open 7 passes is resolved. |
| F-3 | data-quality | ✅ CLOSED (hygiene) | TF-3459 is Won't Fix / resolution Done — the epic-less duplicate of TF-3464 is closed and correctly 0-credited. Nothing further blocks; optional hard-delete is TPM discretion, not a finding. |
| F-4 | coverage-gap | ⛔ ESCALATED (8th pass, zero movement) | CEBE Epic TF-3302 has 0 issues in sprint 21484 — no RFC-authoring Jira Task filed, no not-started declaration in the plan Deviations. Eight consecutive passes with zero board movement. Owner: Julio Jeffer + PM (Zhelia). Decision needed this sprint: either file the RFC-authoring Task, or record an explicit CEBE-deprioritized-for-26Q3 decision. Durable home: a delivery/decisions/ ADR (deprioritize) or the F-4 Task key — a status-risk line alone is no longer sufficient at 8 passes. |
| F-5 | status-progress (residual) | 🟡 STILL OPEN (residual) | Backfill job TF-3548 closed Won't Fix/Done 2026-07-21 — expected (it is blocked on CRM migrating Team data into USMAN, tracked as engineering-bucket A9). Residual is unchanged: the Team-Owner task-breakdown is still BE-only with no FE/Mobile chunk mapping, so Team-Owner progress cannot leave count-based tracking (README/status still 0%). Owner: Ghozi / DRI — size the breakdown + add the FE/Mobile mapping. |
| F-7 | status-progress | ⛔ ESCALATED (3rd pass) | TF-3506 (Mention-User Mobile list-picker pagination) is Done — built outside the breakdown's declared scope, still un-retro-costed. Owner: DRI / PM. Decision needed: retro-cost TF-3506 into the Mention-User breakdown or declare it out-of-band. Durable home: dated status/ scope note or ADR. (No code-join attempted: TF-3506 is already Done and the open item is a scope decision, not corroboration — and mobile-qontak-crm uses QC/QON keys, so a TF-key join would under-match anyway.) |
| F-8 | scope-watch | ⛔ ESCALATED (3rd pass) | Segmentation datamart hardening TF-3507/TF-3508/TF-3511 are now all Done. Whether they are in-scope P1 hardening (retro-cost into the breakdown) or silent scope-growth on the protected 07-28 commitment is still unconfirmed. Owner: DRI. Decision needed: confirm in-scope + retro-cost, or record as added scope. Durable home: dated status/ + breakdown edit. |
| F-10 | off-plan-load | 🟡 STILL OPEN | Engine re-flags Zhelia Alifa: 2 sprint issues (TF-3478 Done, TF-3550-adjacent adhoc work) but not in cdp/delivery/roster.json and no capacity.md row. Owner: TPM. Add Zhelia (discipline PM) to roster + capacity, or record as deliberately out-of-band management capacity. |
| F-11/12/13 | status-progress | ✅ CLOSED (applied pass-11) | The proposed S1 burnup entries are live in the dated status files (Segmentation progress_pct: 47, Mention-User 51, Export 35). Applied at the 2026-07-21 close; no residual. |
New findings this pass
| F-id | Type | Detail | Owner / route |
|---|---|---|---|
| F-14 | off-plan-load + epic-wiring | Wulan Febyazzahra Putri (Bulan) owns TF-3550 ([FE] Unable to add field on layout, Ready to Test) — not in roster.json, no capacity.md row, and the issue has no Epic parent. Same class as F-10. | TPM (roster + capacity) + DRI (parent TF-3550 to the owning initiative Epic — reads like an Export/layout bug). |
| F-15 | coverage-gap / bucket-tracker-gap | The adhoc bucket tracker (TF-3477) is behind the board. Five board issues have no A<n> tracker row: TF-3481 (Azani, FE, Improve small-screen interaction), TF-3480 (Jovi, Team assignee ticket card), TF-3568 (Jovi, bug Toast shown on bottom), TF-3573 & TF-3574 (UNASSIGNED, Customer currency field FE/BE). Tracker rows A1–A5 cover only TF-3478/3479/3483-4/3486/3505. | DRI (bucket owner) — run the bucket-growth checklist to add A-rows (PRD + classification + Jira Story) for the tracked-worthy items and assign or defer TF-3573/3574. Not a mechanical mirror edit. |
| F-16 | assignment-drift (facet of F-15) | The engine surfaced this as "add Azani to adhoc-q3-2026 implementors" because TF-3481 is the one bucket assignee not already an implementor. Not applied as a mirror poke — Azani is in no ## Stories row, so adding him to implementors: alone would be an orphan implementor (violates the tracker-is-canonical / staffing-derives invariant). The real fix is F-15's bucket-growth (add an A6 row for TF-3481, then mirror staffing). | DRI (bucket growth) — add A6 tracker row for TF-3481 (Azani, FE), then mirror to implementors + roadmap + capacity. |
| F-17 | assignment-drift / scope-watch | berlianto is assigned PII Encryption tickets TF-2596 & TF-2600 (Epic TF-2480, both To Do, created 2026-03) inside the active sprint — yet PII Encryption (P10) is explicitly "not queued, no CDP implementor assigned" in the plan (lines 111, 451) and pii-encryption/README.md implementors is (none). Either stale March backlog swept into the sprint, or PII work is quietly underway contradicting the plan. | DRI / PM — confirm intent. If real work: add berlianto to pii-encryption README/roadmap/capacity (deterministic) + a Priority call, since P10 is unranked. If stale: pull TF-2596/2600 out of sprint 21484. |
| F-18 | plan-staleness (not drift) | Plan's own note (lines 29–35) flags every non-Team-Owner lane as pass-10-stale. Confirmed against board: P1 Segmentation's plan blocker #1 (TF-3401 reachability, shown "Blocked") is actually Done, and datamart TF-3507/3508/3511 are Done — the plan treats resolved items as remaining/blocked. P1's only board presence is 2 fresh FE tasks (TF-3545/3546, created 07-21). P2 Mention-User shows 2 board issues vs the plan's multi-engineer queues. | Route to sprint-planner (amend/rederive) — this is staleness the plan predicted, not board drift. Owner: TPM/DRI — rederive the non-Team-Owner lanes before treating queue rows as current. |
| F-19 | data-quality | cdp/adhoc-q3-2026/README.md jira_epic is BIF-8695 (a Bifrost-project key), but the adhoc bucket's real Epic is TF-3477. Cross-project misconfiguration — breaks jira-alignment for the adhoc bucket and shows as a standing SPRINT_EPIC_DRIFT lint warning. | TPM / DRI — correct jira_epic to TF-3477. |
Confirmed-benign / no finding
- epic-wiring-drift TF-3521 (QA BAU): the engine flags TF-3570/TF-3571 (Izzul, QA automation) under untracked Epic TF-3521. TF-3521 is the documented QA BAU Epic (
26Q3 CDP – QA Automation Coverage & Deployment Support, sprint doc §QA BAU contract) — legitimately off the initiative map. No finding; confirmed off-plan. - roster-mismatch Izzul (engine "0 issues"): false-benign. Izzul has TF-3570/TF-3571, but they sit under the off-map QA BAU Epic, which the engine excludes from initiative-Epic counting. Izzul's only planned work is QA BAU (backup, no initiative queue) — so zero initiative-Epic issues is expected, not drift.
- roster-mismatch Hendry (engine "0 issues"): Hendry has 0 issues of any kind in the sprint. QA in this squad tests against existing dev tickets rather than minting per-AC QA issues, and the QA BAU items this window were filed by Izzul. Structural, low-severity; noted so a future pass doesn't re-derive it. If the QA-BAU contract expects Hendry to mint automation-coverage items, that is a nudge to Hendry, not a plan defect.
Identity corrections (for the next pass)
- Wulan Febyazzahra Putri (Bulan) — new CDP contributor surfaced on the board (TF-3550), not yet in
roster.json. Recorded as F-14; the durable fix is the roster/capacity edit. - TF-3428 does not exist — the S1 F-1 ledger cited a Create-Ticket web track of 3 FE tickets; it is 2 (TF-3426/TF-3427). Do not re-chase TF-3428.
Propagation proposals (confirmation-gated — none applied yet)
Same-pass, not close-deferred. Proposed writes, each gated on approval:
- F-15/F-16 (bucket-tracker-gap) — NOT auto-applied. The engine's "add Azani to implementors" is not a sound mechanical mirror edit: Azani has no
## Storiesrow, so a bare frontmatter add is an orphan implementor. Routed to DRI bucket-growth instead (add A-rows for TF-3480/3481/3568 + assign/defer TF-3573/3574). This untracked-issue pattern is invisible to the engine whenever the assignee is already an implementor (e.g. TF-3480/3568 under Jovi, TF-3549 under Jeffer likely also lack rows), so route a full bucket-tracker sync to DRI for both the adhoc (TF-3477) and engineering (TF-3500) buckets — do not re-audit here. - Bucket-tracker-drift (editorial) — APPLIED pass-01: adhoc
## StoriesA5backlog → in-review(TF-3479 isIn Reviewon the board; the Zhelia owner-confirm flag persists — status and owner are orthogonal; rollup stays 2/5 = 40%); engineering## StoriesA11backlog → in-progress(TF-3555) and A13backlog → in-progress(TF-3557). - F-4 / F-7 / F-8 escalation homes — APPLIED pass-01:
- F-4 → new ADR
customer-event-based-engine-cebe/delivery/decisions/0001-cebe-26q3-deprioritize-or-commit-rfc.md, statusproposal— forces the deprioritize-vs-commit decision the DRI/PM has deferred 8 passes (I do not decide it; the record awaits their choice). - F-7 → dated
notes-mention-user/delivery/status/2026-07-23.mdscope note (TF-3506 retro-cost or out-of-band). - F-8 → dated
customer-segmentation/delivery/status/2026-07-23.mdscope note (datamart hardening retro-cost).
- F-4 → new ADR
- Status-progress (step-6b) — one state change recorded, burnup recompute ROUTED (not hand-patched):
- Segmentation TF-3401 (Task 2.3, FE) moved
RTD → Donesince the pass-11 close and is code-corroborated (qontak-customer-fePR #469,8b335f6) — clearing the plan's blocker #1. The burnup is NOT hand-recomputed: the carried 4-day baseline appears BE-only (excludes the already-done, corroborated FE Tasks 2.1/2.2 = TF-3399/3400, 2.5 FE days), so patching in one task's effort would be method-inconsistent. Recompute routed to the DRI via datedcustomer-segmentation/delivery/status/2026-07-23.md; figures carried unchanged (4/47%), health heldat-riskwithon-trackproposed. (Same discipline as F-4's ADR — route the judgment I can't soundly reconstruct, don't guess a canonical number.) - No other new man-day completions. Day 3; the remaining board dones are TF-3548 (Won't Fix, code-uncorroborated → 0 credit, F-5/A9), TF-3549 (engineering-bucket docs → story-count not man-days), TF-3478 (adhoc A1 padding fix). Export/Legacy-Notes/Mention/Team-Owner burnups unchanged since pass-11; current figures stand. Team-Owner remains blocked on F-5 residual.
- Segmentation TF-3401 (Task 2.3, FE) moved
- F-10 / F-14 (off-plan-load) & F-15 / F-17: TPM roster/capacity + assignment edits — proposed, TPM/DRI-owned (not applied here; require roster/bucket-owner action).
Run npm run lint:delivery after every applied mirror edit.