This commit is contained in:
317
docs/briefs/2026-04-22-cc-sprint-11-kickoff.md
Normal file
317
docs/briefs/2026-04-22-cc-sprint-11-kickoff.md
Normal file
@@ -0,0 +1,317 @@
|
||||
# CC-1 Sprint 11 Kickoff Brief — Pre-flight Readiness Sprint
|
||||
|
||||
**Sprint ID:** 11
|
||||
**Sprint type:** Pre-flight Readiness
|
||||
**Datum brief-a:** 2026-04-22
|
||||
**Author:** PM (Claude Opus 4.7, Cowork mode)
|
||||
**For execution:** CC-1 (fresh context, post Sprint 10 full-close + PR #2 merged)
|
||||
**Scope authority:** `decisions/2026-04-22-sprint-11-scope-locked.md` (LOCKED)
|
||||
**Stage 2 config authority:** `decisions/2026-04-22-stage-2-primary-config-locked.md` (LOCKED 2026-04-22, `on/64K`)
|
||||
**Supersedes:** `strategy/2026-04-22-sprint-11-kickoff-memo.md` (DRAFT, judge-methodology axis)
|
||||
**Update 2026-04-22:** Task A1 reasoning_content handling add-on + Task B1 config LOCKED (on/64K).
|
||||
|
||||
---
|
||||
|
||||
## 1. Sprint primary axis
|
||||
|
||||
Sprint 11 je **Pre-flight Readiness Sprint**. Exit kriterijum = **green-light autorizacija za H-42a/b benchmark** ($1500-2600 Stage 2 full-run). Sprint 11 ne izvršava H-42a/b.
|
||||
|
||||
Sve što CC-1 radi kroz Sprint 11 mora da se mapira na 1 od 10 hard gate kriterijuma iz scope lock dokumenta §4. Ako task ne mapuje — CC-1 ne pokreće bez PM ratifikacije.
|
||||
|
||||
---
|
||||
|
||||
## 2. Sprint 11 entry state (Sprint 10 full-close verifikacija)
|
||||
|
||||
Pre nego što Sprint 11 kick-uje, CC-1 verifikuje:
|
||||
|
||||
1. Sprint 10 Task 1.1 CLOSED sa PASS verdiktom (5 safe Qwen configs) — `sessions/2026-04-22-sprint-10-task-1-1-exit.md` landed.
|
||||
2. Sprint 10 Task 1.5 Phase 3 CLOSED i push-ovan na origin (ili eksplicitno deferred ka Sprint 11 kao carry-over sa PM ratifikacijom).
|
||||
3. PR #2 merged u main (per `sessions/2026-04-22-task-18-closed.md`).
|
||||
4. Sprint 10 close-out report finalizovan i pushed.
|
||||
|
||||
Ako bilo šta od gornjeg nije landed — CC-1 NE kick-uje Sprint 11. Ping PM sa blokerom.
|
||||
|
||||
---
|
||||
|
||||
## 3. Task lista (10 gate kriterijuma iz scope lock §4)
|
||||
|
||||
### Track A — Audit-grade traceability
|
||||
|
||||
**Task A1 — H-AUDIT-1 design doc (1 page).** Predaj `docs/plans/H-AUDIT-1-DESIGN-DOC-2026-04-XX.md` sa sledećim sadržajem (i ničim više):
|
||||
|
||||
- **turnId generation point:** gde se generiše (orchestrator turn entry) i kako (`crypto.randomUUID()` v4, ne v7, ne custom).
|
||||
- **Propagation surface:** lista 5+ fajlova u kojima turnId mora biti vidljiv i funkcija/metoda signature-a gde ulazi kao parametar. Očekivani fajlovi iz `project_h_audit_1_not_implemented.md`: `orchestrator.ts`, `cognify.ts`, `tools.ts`, `combined-retrieval.ts`, `prompt-assembler.ts`, `agent-loop` (entry point). Ako se CC-1-ov kodni pregled pokaže da neki od ovih ne postoji sa tim imenom ili da postoje dodatni fajlovi — ažuriraj listu u design doc-u i pomeni razliku.
|
||||
- **Persistence format:** kako turnId se upisuje u existing trace store u `chat.ts`. Struktura polja, tip, retention pravila ako postoje.
|
||||
- **Reasoning_content handling (dodato per `decisions/2026-04-22-stage-2-primary-config-locked.md` §5):** Stage 2 config je LOCKED na `thinking=on, max_tokens=64000`, što znači da Qwen response sadrži `reasoning_content` polje izvan finalnog answer payload-a. Design doc mora eksplicitno adresirati tri pravila:
|
||||
- **Persistence rule:** gde se `reasoning_content` persista u trace store-u (pod istim turnId u poseban slot `turn.reasoningContent` ili potpuno separatan store). Predloži izbor i razlog.
|
||||
- **Retention policy:** koliko dugo se čuva, da li ulazi u audit export-ove, da li se brise posle N dana.
|
||||
- **Exclusion rule:** gde NE ulazi (npr. user-facing output log-ovi, public trace viewer-i, MCP response payload-i). Trace reconstruction iz turnId-a mora moći da opciono includuje ili excluduje reasoning_content per caller permission.
|
||||
- **Test scenario:** unit test koji reconstruct-uje full turn graph iz single turnId-a, uključujući reasoning_content slot kao opcioni payload. Sample code-om opiši test, ne implementiraj još.
|
||||
- **Acceptance kriterijumi:** grep target (≥6 hits za `turnId` u ≥5 fajlova), zero regresija na postojećim suite-ovima, tsc clean, reasoning_content handling dokumentovan u design doc-u.
|
||||
|
||||
**CRITICAL: A1 NE kreće u A2 implementation dok PM ne ratifikuje design doc.** PM ratifikacija gate je tvrd. Ne preempty.
|
||||
|
||||
**Budget:** $0 (markdown only).
|
||||
**Wall-clock estimate:** 1-2h za design doc draft + PM iteration turnaround.
|
||||
|
||||
---
|
||||
|
||||
**Task A2 — H-AUDIT-1 implementation.** Start SAMO posle A1 PM ratifikacije.
|
||||
|
||||
Implementiraj turnId propagaciju per ratifikovani design doc. Acceptance:
|
||||
- `grep -n "turnId" packages/**/*.ts | wc -l` vraća ≥6.
|
||||
- Unique fajlovi sa match-om ≥5.
|
||||
- Novi unit test u existing test suite lokaciji pokazuje reconstruct full turn graph iz single turnId-a.
|
||||
- `pnpm test` vraća zero regresija.
|
||||
- `pnpm tsc --noEmit` clean.
|
||||
- Commit message: `feat(audit): implement H-AUDIT-1 turnId propagation per design doc 2026-04-XX`.
|
||||
|
||||
Nakon merge-a, posti exit ping u `sessions/2026-04-XX-sprint-11-h-audit-1-exit.md` sa grep output-om i test log-om.
|
||||
|
||||
**Budget cap:** $0.10 (unit test API calls).
|
||||
**Wall-clock estimate:** 0.5-1 dan.
|
||||
|
||||
---
|
||||
|
||||
**Task A3 — H-AUDIT-2 bench-spec resolution.**
|
||||
|
||||
Ova task zahteva 30-min Marko + PM call (bench-spec odluka "wall-clock vs recall correctness only", per `project_audit_findings.md`). CC-1 ne izvršava task samostalno — CC-1 STANDS BY dok PM ne dostavi `decisions/2026-04-XX-bench-spec-wall-clock-resolution.md`.
|
||||
|
||||
Po landing-u decision dokumenta, CC-1 (ako treba) ažurira Stage 2 kickoff memo (B4) da reflektuje bench-spec izbor.
|
||||
|
||||
**Budget:** $0.
|
||||
**Wall-clock estimate:** 0.5 dan (posle Marko+PM call).
|
||||
|
||||
---
|
||||
|
||||
### Track B — Methodology locks
|
||||
|
||||
**Task B1 — Stage 2 Qwen config apply.** (LOCKED 2026-04-22)
|
||||
|
||||
Authority: `decisions/2026-04-22-stage-2-primary-config-locked.md` — LOCKED na **`thinking=on, max_tokens=64000`** na route `qwen3.6-35b-a3b-via-openrouter`. Marko je override-ovao PM preporuku (`off/16K`) sa rationale-om iz v05 eval rezultata.
|
||||
|
||||
Apply akcija:
|
||||
- Ažuriraj LiteLLM default config za Stage 2 batch runs:
|
||||
```
|
||||
thinking: true (ili ekvivalent parameter name u harness-u)
|
||||
max_tokens: 64000
|
||||
model: qwen3.6-35b-a3b-via-openrouter
|
||||
```
|
||||
- Verifikuj da C2 i C3 harness koristi taj config eksplicitno, ne nasleđeno iz drugog lokala.
|
||||
- Smoke test 1 poziv da se config aktivirao. Log cost, latency, **i reasoning_content size** (polje koje dolazi sa `thinking=on`).
|
||||
- Exit ping: `sessions/2026-04-XX-sprint-11-b1-config-applied.md` sa cost/latency/reasoning_content size zapisom.
|
||||
|
||||
**Anti-pattern lock (iz §8 decision doc-a):** Ako C3 faila sa 3 attempts na `on/64K`, HARD STOP i PM review — NE automatska reformulacija na `off/16K` sredinom sprinta. Thinking=off je legitimana contingency samo posle Sprint 11/12 retrospektive.
|
||||
|
||||
**Budget cap:** $0.05 (smoke test).
|
||||
**Budget impact downstream:** Stage 2 4-cell mini expected ~$8-14 (vs $4-6 za PM preporuku). Cap $134 nepromenjen.
|
||||
**Wall-clock estimate:** 30 min.
|
||||
|
||||
---
|
||||
|
||||
**Task B2 — Tie-break policy implementacija.**
|
||||
|
||||
Implementiraj per PM preporuku u scope lock §2.B2 (Opcija 3: Sonnet 4.6 kao fourth vendor) sa Opcija 2 fallback (PM escalation na 1-1-2 quadri-vendor split).
|
||||
|
||||
- Novi fajl: `packages/server/src/benchmarks/judge/ensemble-tiebreak.ts`.
|
||||
- Interface: funkcija `resolveTieBreak(votes: Vote[]): TieBreakResult` gde `TieBreakResult = { verdict: string; path: 'majority' | 'quadri-vendor' | 'pm-escalation'; votes: Vote[]; }`.
|
||||
- 4 unit testa pokrivajući: 1-1-1 (trigger quadri-vendor Sonnet call), 1-1-2 (već majority, no tiebreak), 2-1-1 (majority wins), 3-0 (consensus, no tiebreak).
|
||||
- Integracija u postojeći ensemble orchestration path.
|
||||
- Observability: logovi koji path je uzet (majority/quadri/pm-esc) per case.
|
||||
|
||||
PM će LOCK-ovati policy kroz `decisions/2026-04-XX-tie-break-policy-locked.md` pre merge-a.
|
||||
|
||||
**Budget cap:** $0.20 (Sonnet 4.6 calls u unit testu).
|
||||
**Wall-clock estimate:** 2-3h.
|
||||
|
||||
---
|
||||
|
||||
**Task B3 — Opus 4.6 route audit.**
|
||||
|
||||
Per superseded memo bolt-on C:
|
||||
|
||||
1. `grep -rn "claude-opus\|claude-sonnet-4" packages/server/ packages/cli/` → klasifikuj svaku referenca kao:
|
||||
- (a) dated snapshot (npr. `claude-opus-4-6-20251014`, `claude-opus-4-7-20260201`),
|
||||
- (b) floating alias (npr. `claude-opus-4-6`, `claude-opus-4-7`),
|
||||
- (c) hardcoded mismatch (npr. reference na deprecated model).
|
||||
2. Za (b) i (c), dokumentuj Why floating je prihvatljiv (npr. dev convenience path) ili migriraj na dated snapshot.
|
||||
3. LOCK naming convention u `docs/BENCHMARK-INFRASTRUCTURE.md` ili ekvivalent canonical fajl.
|
||||
4. Trigger-on-first-caller-trip observability verify: postoji li log alert kada floating alias failuje na provider side?
|
||||
|
||||
Deliverable: `docs/reports/opus-4-6-route-audit-2026-04-XX.md` + PM izdaje `decisions/2026-04-XX-model-route-naming-locked.md` posle audit review-a.
|
||||
|
||||
**Budget cap:** $0.10 (verification test calls).
|
||||
**Wall-clock estimate:** 1-2h.
|
||||
|
||||
---
|
||||
|
||||
**Task B4 — Stage 2 kickoff memo draft (saradnja sa PM).**
|
||||
|
||||
PM piše prvi draft u `strategy/2026-04-XX-stage-2-kickoff-memo.md` sa 4-nedeljnim planom:
|
||||
- Week 1: Qwen3.6-35B-A3B × full LoCoMo corpus (500 instances ili full set po local zip-u).
|
||||
- Week 2: Gemma Week 3 probe comparison (per `decisions/2026-04-20-gemma-week3-probe-locked.md`).
|
||||
- Week 3: Three-model comparison analysis.
|
||||
- Week 4: Failure mode distribution + publishable results draft.
|
||||
|
||||
CC-1 dodaje harness readiness assessment na kraj memo-a (jednokratno): da li sav tooling za 4-week plan postoji u repo-u, gde su gap-ovi, procenjeni wall-clock za gap closure.
|
||||
|
||||
**Budget:** $0.
|
||||
**Wall-clock estimate:** 1h CC-1 assessment + PM iteracije posebno.
|
||||
|
||||
---
|
||||
|
||||
### Track C — Pre-flight gate execution
|
||||
|
||||
**Task C1 — Stage 0 verifikacija.**
|
||||
|
||||
Stage 0 je CLOSED per memory (`project_preflight_gate.md`). CC-1:
|
||||
- Link postojeće artifacts (stage 0 results).
|
||||
- Verifikuj da nije regredirao (run poslednji known-good smoke test ako postoji, ili uporedi current build vs Stage 0 artifact hash).
|
||||
- Ako regredirao → re-run Stage 0 po originalnom scope-u (~$5).
|
||||
|
||||
Deliverable: kratak check-in ping u `sessions/2026-04-XX-sprint-11-stage-0-verify.md` sa "still green" ili "regression detected, re-run triggered".
|
||||
|
||||
**Budget:** $0 ako green, ~$5 ako re-run.
|
||||
**Wall-clock estimate:** 15-30 min verify, +30 min ako re-run.
|
||||
|
||||
---
|
||||
|
||||
**Task C2 — Stage 1 mikro-eval.**
|
||||
|
||||
Izvršava SAMO posle:
|
||||
- A2 CLOSED (turnId landed),
|
||||
- B1 CLOSED (Qwen config LOCKED),
|
||||
- B2 CLOSED (tie-break implementovan),
|
||||
- C1 CLOSED (Stage 0 verified).
|
||||
|
||||
Scope: kratka eval baseline per `project_preflight_gate.md` Stage 1 spec. Verifikacija da je engine + methodology stack operativan pre Stage 2 main run-a.
|
||||
|
||||
Deliverable: `preflight-results/stage-1-microeval-2026-04-XX.md` sa results tabelom i PASS/HARD STOP verdiktom.
|
||||
|
||||
**Budget:** $5-10.
|
||||
**Wall-clock estimate:** 1-2h.
|
||||
|
||||
---
|
||||
|
||||
**Task C3 — Stage 2 4-cell mini.**
|
||||
|
||||
Izvršava SAMO posle C2 PASS.
|
||||
|
||||
Scope per `decisions/2026-04-20-preflight-stage2-4cell-amendment.md`:
|
||||
- 50 pitanja (fiksni seed=42, pre-registrovan sample).
|
||||
- 4 cells: raw / memory-only / evolve-only / full-stack.
|
||||
- Sonnet 4.6 judge.
|
||||
- Pass kriterijum: full-stack ≥85% recall + ordinal consistency (full ≥ memory, full ≥ evolve, full > raw sa delta ≥10pp, bar jedan layer > raw).
|
||||
- Re-run policy: max 3 attempts, sample curation samo za legitimate scope gap ≤5 pitanja (dokumentovano).
|
||||
|
||||
Deliverable: `preflight-results/stage-2-4cell-mini-2026-04-XX.md` sa 4-cell tabelom, ordinal consistency check-om, i verdiktom.
|
||||
|
||||
Ako PASS → ovo je poslednji gate kriterijum; Sprint 11 blizu full-close-a.
|
||||
Ako HARD STOP (3 attempts faili) → ne zatvaraj Sprint 11. PM review.
|
||||
|
||||
**Budget cap:** $134 (per ratifikovani preflight gate amendment).
|
||||
**Wall-clock estimate:** 3-5h (worst case sa retries).
|
||||
|
||||
---
|
||||
|
||||
## 4. Sekvenciranje (dependencies)
|
||||
|
||||
```
|
||||
C1 ──────────────────────────┐
|
||||
│
|
||||
A1 design doc → PM ratify → A2 ──┐
|
||||
│
|
||||
B1 ratified ──────────────────────┼→ C2 → C3 → Sprint 11 full-close
|
||||
│
|
||||
B2 impl + LOCK ───────────────────┘
|
||||
|
||||
A3 (after PM+Marko call) ──────── informational, ne blocks C3
|
||||
B3 route audit ──────────────── informational, ne blocks C3
|
||||
B4 kickoff memo draft ────── informational, ne blocks C3
|
||||
```
|
||||
|
||||
CC-1 redosled preporučen:
|
||||
1. Day 1 AM: Entry state verify + A1 design doc draft (uključuje reasoning_content handling per LOCK) + B1 apply (config je već LOCKED, nema čekanja).
|
||||
2. Day 1 PM: C1 verify paralelno sa čekanjem na PM A1 ratifikaciju. B1 smoke test push-ovan.
|
||||
3. Day 2 AM: A2 implementation (posle A1 ratifikacije) + B2 impl start.
|
||||
4. Day 2 PM: A2 finish + B2 finish + B3 route audit paralelno.
|
||||
5. Day 3 AM: B2 merge pending LOCK + C2 Stage 1 mikro-eval.
|
||||
6. Day 3 PM: C3 Stage 2 4-cell mini start.
|
||||
7. Day 4: C3 finish + Sprint 11 close-out report + push.
|
||||
|
||||
A3 (bench-spec) ume da ispadne iz calendar-a ako Marko+PM call nije zakazan do Day 2; to je sledeće za eskalaciju PM-u ne CC-1-u.
|
||||
B4 (Stage 2 kickoff memo) PM vodi; CC-1 asistira kad memo bude spreman za harness assessment add-on.
|
||||
|
||||
---
|
||||
|
||||
## 5. Budget summary
|
||||
|
||||
| Track | Low | High |
|
||||
|---|---|---|
|
||||
| A (A1+A2+A3) | $0 | $0.10 |
|
||||
| B (B1+B2+B3+B4) | $0.05 | $0.35 |
|
||||
| C (C1+C2+C3) | $67 | $149 |
|
||||
|
||||
**Sprint 11 total ceiling:** ~$150.
|
||||
**Sprint 10+11 cumulative ceiling:** ~$152 vs $15k Stage 2 full-run envelope. Radikalno unutar granica.
|
||||
|
||||
Per-task hard alarm: ako bilo koji pojedinačni task premaši 130% svoje cap vrednosti, CC-1 HARD STOP i PM ping.
|
||||
|
||||
---
|
||||
|
||||
## 6. Reporting cadence
|
||||
|
||||
- **Day 1 EOD:** CC-1 posti `sessions/2026-04-XX-sprint-11-day-1-status.md` sa (a) entry verify summary, (b) A1 draft link, (c) C1 verify outcome.
|
||||
- **Day 2 EOD:** status ping sa A2 + B2 progress, B3 audit outcome (ako CLOSED).
|
||||
- **Day 3 EOD:** status ping sa B1 applied, C2 verdikt.
|
||||
- **Day 4 EOD ili sprint close:** `sessions/2026-04-XX-sprint-11-close.md` sa svih 10 gate kriterijuma check-in tabelom i green-light preporukom.
|
||||
|
||||
Svaki exit ping po tasku: `sessions/2026-04-XX-sprint-11-<task-id>-exit.md`.
|
||||
|
||||
---
|
||||
|
||||
## 7. Anti-patterns (hard ograničenja)
|
||||
|
||||
- **Anti-pattern #1:** No H-42a/b execution u Sprint 11. Ako neki signal u Sprint 11 iskače u smeru "hajde odmah da pokrenemo full run", CC-1 stand by i PM ping.
|
||||
- **Anti-pattern #2:** No scope creep. Task lista iz §3 je exhaustive. Bilo koji dodatak zahteva novi decision dokument potpisan od PM-a.
|
||||
- **Anti-pattern #3:** No self-merge na PR-ovima vezanim za Sprint 11 deliverables. CC-1 predaje za PM review; PM izdaje merge verdikt.
|
||||
- **Anti-pattern #4:** No post-hoc reformulation rezultata C3 4-cell mini. Pre-registered thresholds (full ≥85%, ordinal consistency) stoje. Re-run pravilo: max 3, curation ≤5 pitanja na legitimate scope gap, eksplicitno dokumentovano. Ne "hajmo samo da slušamo ovaj cell".
|
||||
- **Anti-pattern #5:** No turnId implementacija bez A1 PM ratifikacije. Implementation-first → design-doc-second je refused workflow.
|
||||
|
||||
---
|
||||
|
||||
## 8. Exit criteria check-list (za Sprint 11 close-out report)
|
||||
|
||||
Svih 10 mora biti ✅:
|
||||
|
||||
1. [ ] A1 CLOSED — H-AUDIT-1 design doc ratifikovan (link)
|
||||
2. [ ] A2 CLOSED — turnId landed, grep ≥6, tests green (commit SHA + grep output)
|
||||
3. [ ] A3 CLOSED — bench-spec decision LOCKED (decision dokument link)
|
||||
4. [ ] B1 CLOSED — Stage 2 config LOCKED (decision dokument link)
|
||||
5. [ ] B2 CLOSED — tie-break policy LOCKED + implementovan + tests green (commit + decision)
|
||||
6. [ ] B3 CLOSED — Opus 4.6 route audit + naming decision LOCKED (report + decision)
|
||||
7. [ ] B4 CLOSED — Stage 2 kickoff memo draft ratifikovan (memo link)
|
||||
8. [ ] C1 CLOSED — Stage 0 verify outcome (ping link)
|
||||
9. [ ] C2 CLOSED — Stage 1 mikro-eval PASS (results link)
|
||||
10. [ ] C3 CLOSED — Stage 2 4-cell mini PASS sa ordinal consistency (results link)
|
||||
|
||||
Green-light verdikt za H-42a/b izdaje PM čim svih 10 CLOSED + push.
|
||||
|
||||
---
|
||||
|
||||
## 9. Related
|
||||
|
||||
- `decisions/2026-04-22-sprint-11-scope-locked.md` — scope authority (čitaj prvi)
|
||||
- `decisions/2026-04-22-stage-2-primary-config-locked.md` — Stage 2 config LOCK (`on/64K`), B1 authority
|
||||
- `strategy/2026-04-22-stage-2-qwen-config-ratification-memo.md` — B1 input memo (PM preporuka odbijena, Marko izbor ratifikovan)
|
||||
- `strategy/2026-04-22-sprint-11-kickoff-memo.md` — SUPERSEDED draft (audit trail only, ne izvršavati)
|
||||
- `sessions/2026-04-22-sprint-10-task-1-1-exit.md` — Qwen safe config pool
|
||||
- `sessions/2026-04-22-sprint-10-task-1-5-phase-3-ratification.md` — potential carry-over state
|
||||
- `.auto-memory/project_h_audit_1_not_implemented.md` — turnId implementacija kao ne-verifikacija
|
||||
- `.auto-memory/project_preflight_gate.md` — 3-stage gate struktura
|
||||
- `.auto-memory/project_audit_findings.md` — H-AUDIT-1 + H-AUDIT-2 Must-Fix
|
||||
- `.auto-memory/project_target_model_qwen_35b.md` — kanonski engine
|
||||
|
||||
---
|
||||
|
||||
**End of Sprint 11 kickoff brief. Awaiting CC-1 entry state verify + A1 design doc draft.**
|
||||
Reference in New Issue
Block a user