Skip to main content

CDP Sprint 1 (2026-Q3) — Jira reconciliation, pass 6 (2026-07-14)

Jira reconciliation — recheck (2026-07-14, pass 6)

Sixth pass, run via sprint:reconcile (qontak-docs 3f41860, fetched fresh) plus a direct code-evidence.mjs join across all six squad repos (wider than the reconcile engine's RFC-scoped repo list, so it catches corroboration the engine's own run misses — see finding 21). Sprint 21382 has grown from 66 to 71 issues since pass 5 (2026-07-13). Flow vitals: WIP 23, 6 issues resolved-since, oldest in-progress items unchanged — Ghozi's Export Task 2.1-2.3 (TF-3284/3285/3286), now 20 days old, still touched daily (updated 1 day ago).

Note: this pass runs after the same-day Deviations amendment (TF-3499 re-homed from TF-3477 to TF-3500 / Story TF-3504, sprint goal amended) already committed earlier today — that edit is read as background here, not re-derived.

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

  1. coverage-gap (sprint-scope drift) — FURTHER PARTIALLY RESOLVED: Legacy Migration Activity Logs Task 2 (TF-3465, "[BE] Contact finder FindOneByCrmDataID") is now in-sprint (In Review, Jeffer) — but Tasks 3-9 (TF-3466–3472) are still absent from this pull. 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: unchanged since pass 4/5.
  3. off-plan-load (TF-3477 "26Q3 CDP Adhoc") — PARTIALLY ADDRESSED, STILL OPEN: today's earlier Deviations amendment re-homed the misfiled TF-3499 out of TF-3477 into the correct TF-3500 "Engineering Initiatives" bucket Epic (already documented, cdp/engineering-q3-2026/README.md) — TF-3477 now carries 5 items (TF-3478 To Do, TF-3483/3484/3486 Done, TF-3505 Ready to Test), down from 6. But TF-3477 itself remains a wholly undocumented ad hoc epic — no bucket README, no tracker, no roadmap ## Adhoc / Interrupt lane entry — a different, still-unresolved epic from TF-3500. Open 6 consecutive passes now (2026-07-09 ×3, 07-10, 07-13, 07-14) — still escalated, see below.
  4. Data-quality (TF-3459 duplicate of TF-3464) — STILL OPEN, unchanged: Won't Fix/Done, epic-less, still correctly 0-credited.
  5. coverage-gap (Export Customer Data BE) — RESOLVED (coverage), still 0% credited (execution): unchanged, 5 in-progress tickets under TF-3181, none Done.
  6. coverage-gap (CEBE RFC-authoring task) — STILL OPEN: zero TF-3302 issues of any kind in the 2026-07-14 pull. Open 6 consecutive passes — still escalated, 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 6 consecutive passes — still escalated, see below. Sprint is now 8 of 14 days elapsed (07-14 of 07-07→07-21).
  8. status-progress (TF-3464 unsprinted) — RESOLVED, holding: unchanged since pass 5.
  9. Legacy Migration Activity Logs Task 1 progress write — holding, unchanged this pass (no new Done+corroborated task on this initiative).
  10. assignment-drift false positive (Jeffer, Legacy Migration Activity Logs) — RECURS, confirmed same known cause: README implementors: already lists "Jeffer (Backend)"; the engine's live-Jira "julio jeffer" string still doesn't resolve through roster.json. No repo edit needed — still pending the upstream sprint-reconcile.mjs fix (pass 5 finding 20, not yet landed as of qontak-docs 3f41860).
  11. roster-mismatch (Izzul) — recurs again, still expected/informational (0 sprint issues, QA backup, benched).

New findings from the 2026-07-14 (pass 6) engine + code-evidence run (15 findings: 3 deterministic, 12 editorial from sprint:reconcile; a supplementary direct code-evidence.mjs pass against all 6 squad repos surfaced one more corroboration the engine's RFC-scoped run missed):

  1. status-progress (editorial, real movement, not credited): Notes Mention User — TF-3506 ("[Mobile] Add pagination to CDP member list picker (getListMember)") is Done and code-corroborated (mobile-qontak-crm PR #1866, c5a309022, + follow-up commit e1dec296b). However rfc-notes-mention-user.task-breakdown.md line 11 explicitly states "Mobile (mobile-qontak-crm, chunks 8–9) excluded" from this breakdown's scope — TF-3506 carries no task-id token and no effort line to join against. Per step 6b ("flag what can't be joined instead of inventing"), this is not credited — Mention User progress stays 13%. Flagged for a DRI/PM read: is Mobile pagination in-scope work that needs its own task-breakdown line (retroactively costed), or genuinely out-of-band bugfix work the initiative shouldn't claim credit for either way?
  2. coverage-gap-adjacent observation (editorial, real and new): Customer Segmentation (P1) — 3 new BE tasks appeared today under TF-2544, all Julio Jeffer, all In Review: TF-3507 (dedicated healthcheck endpoint for the Datamart/Segment Postgres connection), TF-3508 (make the datamart table name configurable via SEGMENT_TABLE), TF-3511 (replace hardcoded field-type string literals in segment_engine with consts). These read as hardening work adjacent to task-breakdown T3.1/T3.2 (DATAMART_DSN config, IDatamartRepository) but carry no matching task-id token, so they can't be cleanly joined to a specific breakdown line or priced. None are Done yet (no man-day impact this pass), but this is the one in-window (2026-07-21) commitment — worth a DRI check that scope hasn't silently grown underneath the sprint goal's protected commitment.
  3. code-evidence-gap (editorial, ×6, unchanged pattern): TF-3495, TF-3490, TF-3494, TF-3459, TF-3489, TF-3491 — same 6 QA-authoring/Won't-Fix tickets as pass 5, still correctly uncredited (5 are code-free [QA] Write Test Cases authoring tickets; TF-3459 is the known duplicate).
  4. code-evidence-gap corroborations, confirmed clean (editorial, informational): the supplementary direct code-evidence.mjs run (all 6 repos, not just each initiative's declared code_repos) confirms TF-3483 (qontak-customer-fe PR #453) and TF-3486 (qontak.com PR #12102) are code-corroborated — both are TF-3477 bucket items, already Done and already excluded from man-day accounting (buckets are story-count-rollup, never man-days) — no propagation needed, listed for completeness only.
  5. coverage-gap (deterministic): Create Ticket (TF-3359) still exactly 1 in-sprint issue, 0 BE/FE — unchanged restatement of finding 1.

Escalations (open ≥2nd recheck, per the sprint-layer doctrine step 4) — drafted routed-home content for each, per this pass's confirmation:

  • TF-3477 "26Q3 CDP Adhoc" (finding 3), open 6 passes. Owner: PM/TPM. Proposed decision (either, not both):
    1. Fold it into a bucket initiative — create cdp/adhoc-q3-2026/README.md with initiative_type: bucket, a ## Stories tracker table seeded from the 5 remaining TF-3477 items (A1: TF-3478 padding fix, To Do, Zhelia Alifa, 🟡 Standard; A2: TF-3483 retry-mechanism removal, Done, Jovi, 🟡 Standard; A3: TF-3484 rate-limiter handling, Done, Ghozi, 🟡 Standard; A4: TF-3486 gap-name matching fix, Done, Jeffer, 🟡 Standard; A5: TF-3505 edit- customer null-address edge case, Ready to Test, Jovi, 🟡 Standard), one roadmap Portfolio row + one Epic (TF-3477 itself, already exists — reuse it as the bucket's Epic rather than minting a new one), and a roadmap ## Adhoc / Interrupt lane entry.
    2. Wind it down — if these 5 items are considered closed-out one-off fixes with no ongoing stream, explicitly record that in a decisions/ ADR (status approved) so the next pass stops re-flagging it, and confirm no further TF-3477 items are expected. Recorded here as the accepted-risk line until the PM/TPM call lands — next pass should see one of the two, not a 7th "still open."
  • CEBE RFC-authoring task (finding 6), open 6 passes. Owner: Julio Jeffer / PM. Proposed decision (either): (a) file a lightweight Jira Task "Author CEBE RFC" under Epic TF-3302 — unblocks tracking with zero repo change, gives the next pass something to test against; or (b) if Jeffer genuinely hasn't started it (his queue this sprint is TF-2544 BE + TF-3477/3500 bucket pull-ins), record that explicitly in the sprint's Deviations section as a deliberate CEBE-not-started-this-sprint call, distinct from "queued but silently stalled." A 6-pass-old "author a Task" ask with zero board movement is itself signal CEBE is de facto not being worked this sprint.
  • Team Owner task-breakdown not mirrored to repo (finding 7), open 6 passes. Owner: Ghozi / DRI. Proposed decision: run rfc-task-breakdown now against the already-filed Jira breakdown (18 issues exist under TF-3185: BE TEAM-S01…S18 chunks TF-3448–3458/3488, FE Task 1-5 TF-3312–3316, QA TF-3491) to generate rfc-team-owner-field-and-team-permission.task-breakdown.md — the Jira-side breakdown already exists, so this is a mechanical reverse-derivation, not new estimation work — or explicitly deprioritize P4 for this sprint in Deviations if Ghozi's Export (P3) queue takes precedence. Sprint is now past the halfway mark 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 — this pass only drafts the decision options), the Legacy Migration Activity Logs Tasks 3-9 / Create Ticket web-track sprint-scope gaps (still need Jira board edits), and findings 21/22 (DRI/PM scope reads, not repo edits). No man-day credit clears the step-6b join bar this pass — all initiative progress percentages stay unchanged (Customer Segmentation 18%, Mention User 13%, Team Owner 0%, Export 0%, Create Ticket 0%, Legacy Migration Activity Logs 4%), so no dated status/ write is proposed this pass.

Downstream propagation worklist (pass 6 additions)

#FindingCanonical artifact to reconcileOwning tool / skill
21TF-3506 (Mobile) done + code-corroborated but out of Mention User's declared scopeDRI/PM read: retro-cost into task-breakdown, or explicitly out-of-bandDRI / PM decision
223 new datamart-hardening BE tasks under Customer Segmentation (P1), no task-id joinDRI scope check on the in-window commitmentDRI review
3 (escalated)TF-3477 — 6 passes undocumented, now 5 items (1 moved to TF-3500)Stand up cdp/adhoc-q3-2026/README.md bucket, or wind-down ADRPM/TPM decision
6 (escalated)CEBE RFC-authoring — 6 passes untrackedFile the Jira Task, or record explicit not-started in DeviationsPM decision / Julio Jeffer
7 (escalated)Team Owner task-breakdown — 6 passes missing, Jira-side breakdown already existsRun rfc-task-breakdown against the filed Jira breakdownGhozi / DRI, then rfc-task-breakdown

Always run npm run lint:delivery (DOCS_ROOT pointed at this repo) after any propagation edit.