Chatbot Sprint 1 (2026-Q3) — Jira reconciliation, pass 1 (2026-07-14)
Jira reconciliation — recheck (2026-07-14)
First resync of this sprint (no prior recheck section exists; sprint opened 2026-07-13, this pull is one day in). Sprint 21473 ("Chatbot 26Q3 Sprint 1") holds 22 issues: 12 To Do, 9 in-flight (In Review/Waiting Confirmation), 1 Done, 0 unresolvable. Only 2 of the 8 named engineers (Farras Herdicho, Samudra Linggar) have any live board presence at all; the oldest in-progress item is BOT-4574 (7 days old). Headline: the sprint's two headline goals (Google Calendar OAuth — Sprint Goal 1 — and the Impact Report FE shell) have zero Jira tickets despite being named "Ready" work, and a real, correctly-staffed WIP item is Epic-mis-linked in a way that made the reconcile engine misreport it as absent.
New findings from the 2026-07-14 pull:
- F-1 (
coverage-gap, severe): Google Calendar — Sprint Goal 1 (BOT-4482, umbrella BOT-4600) has no Jira issues at all in sprint 21473 or, by spot-check, anywhere unfiled — confirmed by zeroepic = BOT-4482hits in the digest. This is the sprint's outcome target #1 and Baghiz's (#2), Agus's (#3), and Tito's (#1) named first/near-first queue items; none of the OAuth/booking/verification work is board-tracked one day into the sprint. - F-2 (
coverage-gap, severe): AI Agent Impact Report (BOT-4568, P2) likewise has zero issues on the board, despite the sprint doc treating its FE mocked-API slices as "Ready" from the new task breakdown (outcome target #3; Baghiz #3, Agus #4/#5, Tito #3). - F-3 (Epic-wiring drift, feeds into a false roster-mismatch below): BOT-4574 ("Phase 2:
AI-Assisted Refinement — Refine Rail Tab") and its 8 sub-tasks (BOT-4579–4586, all Samudra
Linggar, all In Review — real, on-track WIP matching the P1 FE queue exactly) are Epic-linked
to BOT-4191 (the Phase 1 "New Engine Migration" child Epic), not BOT-4602 (the Phase 2
"Refiner" child Epic the autonomous-ai-agent README's
## Jira Epicstable and this sprint's own Initiative-index note both name for this work). Only 2 issues (BOT-4594, BOT-4608, both Farras) are correctly linked to BOT-4602. Net effect: the deterministic reconcile engine, which joins strictly on Epic key, undercounts BOT-4602 coverage and — see F-5 — misreports Linggar as having zero sprint work, when he in fact has 9 live, correctly-assigned WIP issues. - F-4 (
roster-mismatch, real): Eko Aprianto (BE) has zero issues anywhere in project BOT under his account — his sole Sprint 1 item (P4 AI Agent Knowledge task-breakdown generation) has no board representation. - F-5 (
roster-mismatch, real): Agus Suparman's Ruby & Rails discovery Story (BOT-4621, under Epic BOT-4620) exists in Jira but is unassigned and not sprint-scoped — despite this sprint doc's Deviations section stating "staffing confirmed (BE/DRI Agus...)" as of 2026-07-13. The Jira mirror lags the repo's staffing record. - F-6 (
roster-mismatch, partial): Tito Amanda and Izzul show zero issues for their named, initiative-specific QA drafting rows (Refiner QA coverage, Impact Report QA checklist, Testing QA checklist) — separate from their QA BAU line (BOT-4609), which is intentionally file-as-you-go per this doc's own contract and is not itself a gap. - F-7 (informational, not a gap): Dimas Fauzi Hidayat (PM/TPM) has zero Jira issues, as
expected —
chatbot/delivery/roster.jsonnotes his queue tracks gates/planning work, not board tasks; no action needed. - F-8 (engine false-positive,
assignment-driftrow dismissed): the reconcile worklist flaggedchatbot/ai-agent-testing/README.mdimplementors as missing "farras herdicho" — but Farras is already listed there asfarras.herdicho. Root cause:sprint-reconcile.mjs'snorm()lowercases but does not fold the dotted-slug README format (farras.herdicho) against the spaced Jira/roster display form (Farras Herdicho), so the substring match never fires. No repo edit needed; worth reporting upstream toqontak-docs(norm()indelivery-model.mjs/ the assignment-drift join insprint-reconcile.mjs). - F-9 (
status-progress, positive, unflagged by the engine): AI Agent Testing (BOT-3351, P3) already has 9 filed BE Tasks assigned to Farras — including numbered "Task 2.1(gap)" through "Task 2.8" items — even though this sprint doc's Initiative index and## Deviationsboth state P3 "no task breakdown yet." The breakdown appears to already exist in Jira; it is not yet mirrored to achatbot/ai-agent-testing/rfcs/*.task-breakdown.mdrepo artifact. - Untracked, off-plan (not a roster finding): BOT-4084 ("Support specialchars for
interactive message on bot-preview", Epic BOT-3914, unassigned, To Do) sits in sprint 21473
with no corresponding initiative folder or
jira_epicanywhere inchatbot/— pure off-plan board presence, zero Class-of-Service discipline.
This pass does not fix: no Jira ticket was created, reassigned, re-linked, or sprint-scoped, and no README/roadmap/capacity staffing cell was edited — this is an observe-and-record pass. Filing the Google Calendar and Impact Report work (F-1/F-2), relinking BOT-4574's Epic (F-3), assigning Eko/Agus's items (F-4/F-5), and mirroring the P3 breakdown (F-9) are PM/TPM/DRI/engineer calls per CLAUDE.md doctrine, not something this pass rewrites unilaterally.
Downstream propagation worklist
| # | Finding | Canonical artifact to reconcile | Owning tool / skill |
|---|---|---|---|
| 1 | F-1 Google Calendar zero board presence | File BOT-4482-scoped Tasks for Agus (BE), Baghiz (FE), Tito (QA) into sprint 21473 | sprint-jira-sync (sprint mode) |
| 2 | F-2 Impact Report zero board presence | File BOT-4568-scoped Tasks per the Phase-1 breakdown for Baghiz/Agus/Tito into sprint 21473 | sprint-jira-sync (sprint mode) |
| 3 | F-3 BOT-4574 Epic mis-link | Re-link BOT-4574 (+ verify its 8 sub-tasks inherit correctly) from Epic BOT-4191 to BOT-4602 | Hand-edit in Jira (Epic Link field), then re-run sprint:reconcile to confirm F-3/F-5-adjacent drift clears |
| 4 | F-4 Eko Aprianto zero board presence | File a P4 task-breakdown-generation Task for Eko, or flag genuine unavailability in ## Deviations + capacity.md | sprint-jira-sync or PM/TPM capacity call |
| 5 | F-5 BOT-4621 unassigned + unsprinted | Assign BOT-4621 to Agus and sprint-scope it (or explicitly hold it out of Sprint 1 if discovery hasn't started) | Hand-edit in Jira |
| 6 | F-6 Tito/Izzul initiative-QA rows unfiled | File QA drafting Tasks under BOT-4602 (Refiner) and BOT-4568 (Impact Report) for Tito | sprint-jira-sync |
| 7 | F-8 engine false-positive | No repo edit; report the norm() gap upstream to qontak-docs | Upstream issue against sprint-reconcile.mjs |
| 8 | F-9 P3 breakdown exists in Jira only | Generate chatbot/ai-agent-testing/rfcs/phase-1-historical-validation.task-breakdown.md (or matching slug) mirroring the 9 filed BE tasks | rfc-task-breakdown |
| 9 | BOT-4084 untracked off-plan item | Decide: fold under an existing/new chatbot initiative, or leave as ungoverned bot-preview maintenance — document either way | PM/TPM decision |
Always run npm run lint:delivery (DOCS_ROOT pointed at this repo) after any propagation edit.