Histori rilis
CAF Initiator ada di v0.1.11, dan CAF Orchestrator ada di v0.2.0 — halaman ini akan terus bertambah seiring rilis berikutnya.
Unreleased
Okt 2026- caf-design dan caf-breakdown ditulis tanpa banner DRAFT (dispatch test-nya lolos), jadi Planner baru langsung diarahkan ke keduanya
- caf-architect tidak lagi ditawarkan di picker agent: Planner yang menulis design.md. caf-architect.md yang sudah ada di repo dibiarkan
Orchestrator v0.2.0
Okt 2026- Terminal UI, pnpm tui (pnpm start:tui setelah build): menyalakan dan mematikan web server, worker, dan Cloudflare tunnel; menampilkan antrean dan kesehatan Redis / DB / HTTP, kartu ringkasan, daftar run, Agent Floor versi teks, log live, command palette (ctrl+p), dan daftar job gagal dengan retry. Tanpa browser, login, atau web server yang harus jalan
- Runner Cloudflare tunnel, pnpm tunnel, supaya webhook Linear dan GitHub sampai ke mesin lokal. TUNNEL_NAME, TUNNEL_URL, TUNNEL_TARGET_URL, dan CLOUDFLARED_BIN di .env; bisa juga dikontrol dari TUI
- Halaman login dashboard di /dashboard/login dengan cookie sesi bertanda tangan, HttpOnly (12 jam) dan tombol Log out, menggantikan Basic Auth browser. Kredensialnya tetap dashboard.basicAuthUser dan DASHBOARD_BASIC_AUTH_PASSWORD
- DASHBOARD_DEFAULT_VIEW (dashboard atau agent-floor) menentukan isi /dashboard. Agent Floor pindah dari /dashboard/agent-floor ke /dashboard/floor/*, dan header-nya menampilkan total dan rata-rata biaya per run
- Gate validasi dipilih dari checkout: caf-validator (validate-report.md) bila .claude/agents/caf-validator.md ada, selain itu caf-qa. Langkah docs dilewati, bukan gagal, bila tidak ada agent caf-documentation (SDD-04a)
- Ringkasan acceptance criteria di bagian atas body PR, dan aturan bahwa report PASS yang semua criterion-nya UNVERIFIED menjadi NEEDS_HUMAN. Gate disimpan sebagai validate; qa lama tetap terbaca (SDD-04b, 04d)
- Clarify lewat ticket: spec NEEDS_CLARIFICATION, atau DRAFT dengan pertanyaan BLOCKING yang belum dijawab, menghentikan run dan bertanya lewat komentar ❓ CAF-CLARIFY (SDD-04c, 04d)
- Spec gate: ticket berlabel spec-approval berhenti di Draft PR berisi spec sampai /caf-approve-spec; run lanjutan yang sukses menandai PR Ready for review (SDD-04c, 04d)
- readFixReviewLog mengakhiri blok komentar pada baris ## hanya setelah baris Status dan di luar code fence (SDD-04e)
- Validator terbatas: caf-validator berjalan dengan dontAsk dan allowlist perintah Bash, tulis hanya ke .caf/tasks/, serta environment yang dibersihkan; agents.validator.restrictBash dan allowedCommands (SDD-04f)
- Autentikasi git tanpa token di workspace: tiap perintah jaringan memakai extraheader per-proses. Butuh git 2.31 atau lebih baru (SDD-04g)
v0.1.11
Okt 2026- Skill caf-design dan design.md: Planner menulis desain teknis bila ticket melintasi beberapa app, mengubah skema, atau mengubah kontrak (SDD-05a)
- Skill caf-breakdown dan breakdown.md: Planner mengusulkan cara memecah request dengan beberapa hasil lalu berhenti; /caf-plan boleh membuat ticket satu per satu setelah dijawab ya (SDD-05b)
- Kontrak artifact Planner menyebut design.md dan breakdown.md di satu tempat; spec garis besar tidak punya acceptance criteria dan menulis Tidak ada (SDD-06)
- Teks agent lebih jelas: ## Coverage di tasks.md, verdict reviewer untuk temuan yang hanya bisa diputuskan manusia, cakupan checklist validator dan pipe di tabel report (SDD-07)
- caf-spec v4, diselaraskan dengan Planner: Tidak ada untuk section kosong, Assumption A-n:, dan nilai Status keempat NEEDS_HUMAN (SDD-10)
- Planner menulis artifact-nya dalam bahasa penulis ticket, bukan bahasa teks yang dikutip ticket (SDD-11, SDD-12)
- CAF.md diselaraskan dengan perilaku spec-driven (SDD-09)
v0.1.10
Okt 2026- Planner spec-driven: Specify → Clarify → Plan → Tasks, requirements.md dengan acceptance criteria bernomor dan baris Status; skill caf-spec dan caf-traceability (SDD-01, SDD-02)
- Agent implementasi, Reviewer, dan command review yang sadar spec: baca spec dulu, berhenti bila spec belum jelas, laporkan bukti per criterion, tidak pernah mengubah spec yang sudah disetujui (SDD-03b, 03d)
- Agent caf-validator baru dan /caf-plan masuk scaffold default, menggantikan caf-qa; validator menjalankan baris Verify: command: dengan aturan ketat (SDD-03b1, 03c2, 03e)
- Lima agent dan delapan command tidak lagi di-scaffold: Documentation, DevOps, PM, UX Designer, Auditor, serta command discovery, audit, design-ticket, qa-check, review-ticket, dan feature-catalog. File yang sudah ada tetap (SDD-03c1)
- SINGLE_REPO sekarang mendapat caf-frontend dan caf-backend, bukan caf-implementer (SDD-03c3)
- /caf-run-pipeline sekarang /caf-run, dan /caf-plan-ticket tidak lagi ditulis (SDD-03c2c)
- Skill caf-verify diganti nama menjadi caf-self-verify, dengan warning skill-renamed di curate audit (SDD-03c2d)
- curate melewati file agent dengan kind tak dikenal dan melaporkannya, bukan menulis ulang (SDD-03g)
- curate membaca kembali daftar app dari Input agent QA dan Reviewer sehingga sync tidak lagi menghilangkannya; rollout warning untuk tools di frontmatter, pointer skill, dan Constraints Planner (SDD-03a2, 02d)
v0.1.9
2026- CAF skills (CAF-SKILLS-01): caf-init scaffold skills menulis lima skill universal ke .claude/skills/ — caf-verify, caf-scope-discipline, caf-no-guess, caf-escalate, caf-piv
- Definisi agent dapat section opsional ## Skills berisi pointer Read ke skill; agent yang di-generate setelah skill ada langsung mendapat pointernya
- Agent yang sudah ada ditawari section ## Skills dengan preview dan konfirmasi per file — hanya ditulis kalau hasilnya adalah file lama plus persis satu section itu
- caf-verify dibangun dari script yang terdeteksi di package.json; script yang tidak ada meninggalkan baris TODO dan banner DRAFT, dan agent mengabaikan skill DRAFT
- curate --check-drafts sekarang mencakup skill: file skill yang tidak ada, pointer ke skill DRAFT, TODO terbuka tanpa banner, dan banner DRAFT yang baru dihapus setengah
- /caf-complete-drafts menangani skill DRAFT dan tidak pernah mengarang verification command
- README ditulis ulang
v0.1.8
2026- Dukungan SINGLE_REPO: repo tanpa workspaces sekarang jadi mode resmi, bukan error — root repo adalah satu-satunya app
- Flag baru --mode (single atau mono) di scaffold, docs, dan curate untuk meng-override deteksi repo mode
- Agent implementasi single-repo caf-implementer, dengan --scope untuk membatasinya ke direktori tertentu dan --role frontend atau --role backend untuk men-generate-nya sebagai caf-frontend.md / caf-backend.md bagi CAF Orchestrator
- AI-assisted draft completion: scaffold complete-drafts men-generate command /caf-complete-drafts — mengisi TODO dari kode dan bertanya dulu untuk konten milik manusia
- curate --check-drafts: pengecekan read-only atas draft yang sudah diisi (section ter-track yang berubah, script yang tidak ada, placeholder tersisa, path golden example yang hilang)
- Placeholder template generate-time yang tersisa sekarang membatalkan penulisan
- Output MONOREPO dibekukan dengan snapshot test
v0.1.7
2026- Report Format dan Retry Logic role-aware untuk kind qa dan reviewer
- caf-qa.md dapat Report Format sendiri: qa-report.md dengan baris Status berisi PASS atau FAIL, sesuai yang di-parse CAF Orchestrator
- Retry Logic QA dan Reviewer sekarang menyebut file report-nya sendiri, bukan verify-report.md
v0.1.6
2026- Report Format kind-aware untuk caf-reviewer (CAF-REVIEWER-FORMAT-01)
- caf-reviewer.md dapat section Report Format sendiri — skeleton Verdict (APPROVE / CHANGES REQUESTED / DEFER) yang sudah diperbaiki, ditulis ke .caf/tasks/review-notes.md
- Sebelumnya hanya kind auditor yang punya Report Format; branch reviewer ditambahkan ke buildReportFormatSection(kind)
- buildAuditContractSections(kind): reviewer hanya dapat Report Format (tanpa What to Look For — scoped ke kontrak Verdict, bukan kriteria review)
- Skeleton disalin verbatim dari buildInitialReviewPrompt() milik caf-orchestrator supaya tetap kompatibel kata-per-kata dengan parser Verdict strict/loose di report-reader.ts (tidak ada shared import antar package — risiko drift dicatat di kode)
- Regression test ditambahkan: test/reviewer-report-format.test.js
- README diperbarui
v0.1.5
2026- Sistem content-level section tracking (CAF-CURATE-DIFF-01)
- Command curate: content-level section tracking (3-way diff baseline/current/template → IN_SYNC/DRIFT/CUSTOMIZATION/CONFLICT/UNTRACKED)
- Command curate baseline — mengisi manifest untuk section yang untracked, tidak pernah mengubah konten
- Parsing section sekarang fence-aware (menangani blok ```, menghindari batas section yang salah)
- Retry logic ditambahkan untuk discovery agents dan section guards
- devops ditambahkan ke KNOWN_KINDS (memperbaiki salah klasifikasi sebagai implementation, risiko privilege-escalation)
- Section builder Discovery (Tools/Input/Output) dapat branch pm/ux-designer yang sesungguhnya — tidak ada lagi false positive DRIFT dari generic-fallback
- Idempotency check diselaraskan dengan metode posting initial review milik webhook
- Test script ditambahkan ke package.json plus ekspansi test suite besar (agents sync, manifest gen, devops handling, retry logic, Discovery sections)
- Dokumentasi diperbarui: section tracking dan retry logic dijelaskan
v0.1.0
2026- Rilis awal CAF: disiplin PIV (Plan → Implement → Verify), retry sekali sebelum diserahkan ke manusia
- CAF Initiator — CLI scaffold generator dengan deteksi stack otomatis
- CAF Orchestrator — webhook receiver self-hosted (Fastify + BullMQ + Redis)
- Arsitektur 5 layer: Project Knowledge Base, Agent Definitions, Artifact Handoff, Quality Gates, Orchestration
- Integrasi tracker: Linear (Jira direncanakan)
- Integrasi Git host: GitHub (GitLab direncanakan)
- Checkpoint human-review wajib di setiap fase — tidak ada auto-merge