Skip to main content

CDP Sprint 1 (2026-Q3) — Jira reconciliation, pass 5 (2026-07-13)

Jira reconciliation — recheck (2026-07-13, pass 5)

Fifth pass, run via sprint:reconcile (qontak-docs pinned to 98b09ec, fetched fresh for this pass — the code-evidence join needed it) against a fresh live pull. Sprint 21382 has grown from 58 to 66 issues since pass 4 (2026-07-10) — real movement. Flow vitals since 2026-07-10: WIP 17, 6 issues resolved-since, oldest in-progress items are Ghozi's Export Task 2.1-2.3 (TF-3284/3285/3286, 19 days old, all touched today).

Status of the 2026-07-10 (pass 4) findings, re-verified against the 2026-07-13 pull:

  1. coverage-gap (sprint-scope drift) — FURTHER PARTIALLY RESOLVED: Legacy Migration Activity Logs BE Task 1 (TF-3464) is now in sprint 21382 and Done (see finding 16 below) — but Tasks 2-9 (TF-3465–3472) are still absent from this pull entirely. Create Ticket web track (TF-3426/3427/3428) — STILL OPEN, absent again; only the QA ticket TF-3495 is in-sprint under TF-3359.
  2. roster-mismatch (Azani) — RESOLVED, holding: still 8 issues under her name in sprint 21382, unchanged from pass 4.
  3. off-plan-load (TF-3477 "26Q3 CDP Adhoc") — STILL OPEN, and growing: now 6 tracked tasks under the epic (TF-3478 Zhelia Alifa To Do, TF-3483/3484/3486 Done, plus two new since pass 4: TF-3499 Julio Jeffer Done ["Tidy dependencies"] and TF-3505 Giovanni Massimiliano To Do [edge-case handling]). TF-3479 (previously To Do under Zhelia Alifa) no longer appears in this pull — unconfirmed whether it was resolved, removed from sprint, or deleted; flag for the next pass rather than assume closure. Still zero repo documentation (no bucket README/tracker, no roadmap ## Adhoc / Interrupt lane entry) despite now being a 6-item, actively-growing stream consuming Ghozi/Jovi/Jeffer capacity outside their ranked queues. This finding has now been open across 5 consecutive passes (2026-07-09 ×3, 2026-07-10, 2026-07-13) — escalating, see below.
  4. Data-quality (TF-3459 duplicate of TF-3464) — STILL OPEN, unchanged: Won't Fix/Done, epic-less. TF-3464 (the real ticket) is now itself Done — see finding 16.
  5. coverage-gap (Export Customer Data BE) — RESOLVED (coverage), 0% credited (execution): Ghozi's BE queue item now has 5 real in-progress tickets (TF-3284–3288, Task 2.1→2.5) under TF-3181 — the coverage gap is closed. None are Done yet, so no man-days credited this pass.
  6. coverage-gap (CEBE RFC-authoring task) — STILL OPEN: no TF-3302 issue of any kind appears in the 2026-07-13 pull. Open across all 5 passes — escalating, see below.
  7. status-progress (Team Owner task-breakdown not mirrored to repo) — STILL OPEN: cdp/team-owner-field-and-team-permission/rfcs/ still holds only the RFC + its review, confirmed by directory listing this pass. Open across all 5 passes — escalating, see below.
  8. status-progress (TF-3464 in-progress but unsprinted) — RESOLVED: TF-3464 is back in the sprint-scoped digest and is now Done, code-corroborated (see finding 16).
  9. roster.json accountIds — RESOLVED: all six active-roster entries (Ghozi, Berlianto, Julio Jeffer, Jovi, Alfi, Hendry) now carry a real accountId, confirmed via lookupJiraAccountId on 2026-07-12 per the file's own provenance note. Izzul's remains the shared cross-squad backup entry, unresolved independently for cdp (as documented, not a gap).
  10. Izzul false roster-mismatch — recurs again this pass (0 sprint issues); still informational, confirmed expected (QA backup, benched).

New findings from the 2026-07-13 (pass 5) engine run (sprint:reconcile, 15 findings: 3 deterministic, 12 editorial — the jump from 7 is the new code-evidence-gap check, run for the first time this pass since qontak-docs was fetched to 98b09ec):

  1. status-progress (editorial, real and new — the reason for this pass): Legacy Migration: CRM Activity Logs → CDP — TF-3464 ("[BE] Task 1: Schema additions + source const + Mongo indexes") is Done, and — unlike every other "done" issue this sprint — it is code-corroborated: two merged PRs in contact-service (PR #855 0f06b173, PR #858 d8fe189f). Task 1's BE slice is 1 of its 1.5-day total (BE 1 + QA 0.5); the QA 0.5 isn't separately ticketed, so only the BE day is credited. 1 / 24.5 CDP-side known days = 4%. Applied this pass: status/2026-07-13.md, cached to the README progress_* and the roadmap ## Portfolio progress & forecast row. No other initiative moved: Customer Segmentation (18%, unchanged — its 3 FE tasks are In Testing/In Progress, not Done), Mention User (13%, unchanged), Team Owner (0%, unchanged — its lone Done issue TF-3491 is a QA-authoring ticket, addressed in finding 17), Export (0%, unchanged — same QA-authoring pattern), Create Ticket (0%, unchanged).
  2. code-evidence-gap (editorial, ×6 — first run of this check): every OTHER "Done" issue this sprint has no merged-code trace. Five are legitimately code-free and not real gaps: TF-3495, TF-3490, TF-3489, TF-3494, TF-3491 are all [QA] Write Test Cases authoring tickets (Hendry) — writing test-case documentation has no source diff by nature. These match the full declared effort_qa_days line only for Customer Segmentation (1.5) and Mention User (4.5) — both already credited in prior passes and reconfirmed clean here. They do NOT cleanly join to the full QA line for Team Owner (7.5, "1.5 man-weeks" of QA-execution, of which this ticket is plainly just the authoring slice) or Export (5, ditto) — correctly left uncredited rather than crediting a guessed fraction; same open-unresolved treatment for Create Ticket's QA line (1.5). The sixth, TF-3459, is the already-known Won't-Fix duplicate of TF-3464 (finding 4) — its 0-credit status was already correct.
  3. coverage-gap (deterministic): Create Ticket (TF-3359) still exactly 1 in-sprint issue, 0 BE/FE — narrower restatement of finding 1.
  4. assignment-drift (deterministic) — re-verified, still a false positive, different root cause than pass 4 claimed: the pass-4 note attributed this to Jeffer's then-null roster.json accountId; that has since resolved (finding 10), yet the engine still flags it. Direct check of the README confirms implementors: already lists Jeffer (Backend) — the real cause is a casing/nickname string-compare artifact in sprint-reconcile.mjs's assignment-drift check (comparing against a lowercased Jira-derived "julio jeffer" rather than resolving through roster.json's "Jeffer" → "Julio Jeffer Maliangkay" key). No repo edit needed; worth filing upstream against sprint-reconcile.mjs.
  5. roster-mismatch (deterministic): Izzul, 0 sprint issues — expected, see finding 11.

Escalations (open ≥2nd recheck, per the sprint-layer doctrine step 4):

  • TF-3477 "26Q3 CDP Adhoc" (finding 3), open 5 passes. Owner: PM/TPM (no DRI assigned — the epic itself has no initiative). Decision needed: fold into a proper bucket initiative (initiative_type: bucket, README ## Stories tracker, Class of Service, roadmap ## Adhoc / Interrupt lane entry — the same shape already used for engineering-q3-2026/TF-3500, a different, already-documented bucket) or wind it down. Routed home: none exists yet because the decision itself is what's missing — recorded here as the accepted-risk line until the PM/TPM call lands; the next pass should either see a new cdp/<bucket-slug>/README.md or a documented wind-down, not a 6th "still open."
  • CEBE RFC-authoring task (finding 6), open 5 passes. Owner: Julio Jeffer (assignee) / PM (staffing call on Data/Infra per the roadmap's own TBD note). Decision needed: either file the lightweight "author CEBE RFC" Task under TF-3302 in Jira (unblocks tracking, no repo change) or record explicitly that Jeffer has not yet started it and why. Routed home: none yet — flagging that a 5-pass-old "author a Task" ask with zero board movement is itself a signal CEBE is de facto not being worked this sprint despite being in Jeffer's queue.
  • Team Owner task-breakdown not mirrored to repo (finding 7), open 5 passes. Owner: Ghozi (BE, RFC brief explicitly asked for this "early this sprint") / DRI. Decision needed: run rfc-task-breakdown against the now-filed Jira breakdown (BE TEAM-S01…S18 + FE/Mobile chunks) to generate rfc-team-owner-field-and-team-permission.task-breakdown.md, or explicitly deprioritize it. Routed home: none yet — the sprint is now more than half over (07-13 of 07-07→07-21) with this still outstanding.

This pass does not fix: the 3 escalated items above (routing decisions are PM/TPM/DRI calls, not unilateral repo edits), the Legacy Migration Activity Logs Tasks 2-9 / Create Ticket web-track sprint-scope gaps (still need Jira board edits), and the Team Owner/Export/Create-Ticket QA-line joins (correctly left unresolved rather than guessed). This pass does apply the one clean, fully-derivable progress write (finding 16) same-pass rather than deferring it to close, per the sprint-resync step 6b doctrine.

Downstream propagation worklist (pass 5 additions)

#FindingCanonical artifact to reconcileOwning tool / skill
16Legacy Migration Activity Logs Task 1 done + code-corroboratedApplied this pass: status/2026-07-13.md → README progress_* → roadmap mirrorDone (this pass)
17TF-3477 escalation — 5 passes undocumented, now 6 itemsFold into a bucket initiative or wind downPM/TPM decision
18CEBE RFC-authoring escalation — 5 passes untrackedFile the Jira Task, or record why not startedPM decision / Julio Jeffer
19Team Owner task-breakdown escalation — 5 passes missingRun rfc-task-breakdown against the filed Jira breakdownGhozi / DRI, then rfc-task-breakdown
20sprint-reconcile.mjs assignment-drift false positive (casing/nickname compare, not accountId)File upstream against qontak-docs sprint-reconcile.mjsUpstream bug report

Always run npm run lint:delivery (DOCS_ROOT pointed at this repo) after any propagation edit — already run clean for this pass (0 errors; the 27 advisory warnings present are all pre-existing and outside CDP/this sprint's scope).