Changelog

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