Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
# Changelog

Semua perubahan penting proyek ini. Format: [Keep a Changelog](https://keepachangelog.com/id/1.1.0/),
versi mengikuti [SemVer](https://semver.org/). Belum ada rilis publik (`0.1.0`, unpackaged).
versi mengikuti [SemVer](https://semver.org/). **Rilis publik pertama `0.1.0` (2026-07-21)** — repo publik, Apache-2.0, unpackaged (bukan `npm publish`; G-59).

> Riwayat lengkap per-sesi ada di `docs/CONTEXT.md` + git log; CHANGELOG ini mulai dari M5.

## [Unreleased]

## [0.1.0] - 2026-07-21

Rilis publik pertama. Repo di-flip ke publik + private vulnerability reporting aktif + tag/Release `v0.1.0` dari commit ber-CI-hijau `f30e915` (target `main`). Menutup P-1. Isi rilis = seluruh entri di bawah (M1–M5 + M-web + kesiapan publik Apache-2.0/CI/SECURITY + remediasi PII G-61).

### Added

- **Persiapan repo publik — berkas komunitas + metadata (demo-only posture).** `CONTRIBUTING.md`: menyatakan repo = artefak demonstrasi solo/non-komersial yang **tidak menerima PR eksternal rutin** (fork & pakai-ulang Apache 2.0 dipersilakan; keamanan → `SECURITY.md`; tracker kerja internal = `docs/ISSUES.md`, bukan GitHub Issues). `package.json`: tambah field `repository` (URL git kanonik) + `keywords` (discoverability); `bugs` sengaja dikosongkan (tak ada public bug tracker — keamanan lewat PVR). Reading-guide 1-baris di header `docs/CONTEXT.md` & `docs/ISSUES.md` untuk mengarahkan pengunjung pertama ke README/PROJECT (doc-doc itu = jurnal/tracker internal padat jargon). Sapuan akhir kerahasiaan pra-flip: metadata commit author/committer diverifikasi **100% noreply** (cek manual `git log --all --format='%ae %ce'`, gate file-based tak menjangkaunya — G-61).
Expand Down
10 changes: 10 additions & 0 deletions docs/CONTEXT.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,16 @@

## Status saat ini

- **Terakhir diupdate:** 2026-07-21 (sesi **Linux, dgn owner** — **RILIS PUBLIK v0.1.0 — P-1 DITUTUP**). Step 0: sinkron `origin/main` (0/0), tree bersih, branch `claude/session-start-phjitd`. Bukan sesi kode — verifikasi kesiapan publik + eksekusi langkah rilis owner-driven.
**Konteks:** owner sudah flip repo ke publik sebelum sesi; tugas = cek kondisi vs checklist P-1 lalu selesaikan sisanya.
**(1) Verifikasi repo publik (via GitHub MCP API):** `private:false`/`visibility:public` ✅ · Apache-2.0 terdeteksi ✅ · description + 5 topics ✅ · CI `main` (`f30e915`) success (semua 8 run hijau) ✅. **G-61 dicek ULANG di remote (bukan cuma lokal):** 182 commit remote (2 halaman `list_commits`) = **100% noreply**, nol non-noreply → nol email pribadi terekspos di kondisi publik.
**(2) Sisa P-1 saat cek awal:** tag/Release `v0.1.0` **belum ada** (`list_tags`+`list_releases` kosong) · PVR tak bisa diverifikasi via MCP (field `security_and_analysis` tak diekspos) → owner konfirmasi manual sudah aktif.
**(3) Tag v0.1.0 — dikerjakan owner-driven (G-62 baru):** agent buat annotated tag lokal (tagger di-set identitas owner `ziffan@users.noreply.github.com`, bukan "Claude", demi konsistensi pasca-G-61) TAPI **`git push origin v0.1.0` ditolak 403** oleh egress proxy (push di-scope ke branch designated saja; ref tag bukan branch) + GitHub MCP tak punya `create_release` → **jalur agent buntu, bukan diakali**. Owner publish Release via **GitHub UI (Cara A)**. Diverifikasi via `get_release_by_tag`: `draft:false, prerelease:false`, target `f30e915`, author `ziffan`, id `357080209`, URL `/releases/tag/v0.1.0`.
**(4) Dua kosmetik tersisa juga diselesaikan owner:** website About = `https://ziffany.firdinal.my.id/` ✅ · tab Issues dimatikan (`has_issues:false`, konsisten posture demo-only CONTRIBUTING) ✅.
**Hasil: P-1 TUNTAS PENUH — acca resmi rilis publik v0.1.0.** Tak ada blocker rilis tersisa.
**Docs sesi ini:** ISSUES (P-1 ✅ + G-62 inline), GOTCHAS (**G-62** + indeks), CHANGELOG (`[0.1.0] - 2026-07-21`), CONTEXT (ini). Kode: **nol** (sesi verifikasi/rilis).
**Next konkret (sesi berikutnya):** tak ada milestone aktif — sisa **P3 oportunistik** tak berubah (W-3 favicon residual · F-4/5/6 · B-3 · I-15 live-verify limit asli · I-33-residual). **M-remote** menunggu owner buka lagi. **⚠️ Ingat G-61:** clone di mesin Windows masih history lama → hapus & clone-ulang sebelum kerja di sana (`git pull` biasa menghidupkan commit ber-email lama).

- **Terakhir diupdate:** 2026-07-20 (sesi **Linux, dgn owner** — **rapih-rapih dokumentasi pra-publik**). Step 0: sinkron `origin/main` (0/0), tree bersih, di branch `claude/new-session-sw1q2i`. Bukan sesi kode — persiapan berkas komunitas + metadata + sapuan akhir. **Tahapan yang dijalankan (usulan 4-tahap, disetujui owner):**
**(Tahap 0 — sapuan akhir kerahasiaan, verifikasi):** metadata commit author/committer diperiksa manual (`git log --all --format='%ae %ce'|sort -u`) → **100% noreply** (`noreply@anthropic.com` co-author + `ziffan@users.noreply.github.com` + `noreply@github.com`); nol email domain-pribadi. Ini jalur yang **tak terjangkau gate file-based** (G-61) — satu-satunya cara = cek manual metadata. Nol file rahasia tracked; path personal cuma fixture yang memang mencolok (`/home/ziffan/secret-project` dll).
**(Tahap 1 — metadata `package.json`):** temuan = `repository`/`bugs`/`keywords` semua `undefined`. Tambah `repository` (URL git kanonik `github.com/ziffan/auto-continue-cli-agent`) + `keywords`. **`bugs` sengaja dikosongkan** (kontribusi tertutup → tak ada public bug tracker; keamanan lewat PVR SECURITY.md; URL `/issues` yang salah lebih buruk drpd tak ada). `"private": true` tetap.
Expand Down
1 change: 1 addition & 0 deletions docs/GOTCHAS.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@
- **G-52** — `<Hidden>true>` Task Scheduler TAK cegah jendela konsol; node @logon dapat PseudoConsoleWindow terlihat -> pakai conhost headless

## Repo publik / dokumen turunan
- **G-62** — Langkah owner-action (tag/Release, flip visibility) TAK bisa dari sesi agent: `git push <tag>` ditolak 403 oleh egress proxy (push di-scope ke branch designated; ref tag bukan branch) + GitHub MCP tak punya `create_release`/create-ref-tag (hanya `create_branch`=`refs/heads`). Verifikasi via API tetap bisa (read).
- **G-61** — Audit privasi yang memindai ISI file melewatkan **metadata commit** (author/committer email) — jalur PII yang tak tersentuh gate mana pun
- **G-60** — Dokumen keamanan tulisan subagent terbaca meyakinkan tapi bisa BERTENTANGAN dgn kode/ADR → verifikasi tiap klaim ke kode; gate baru wajib punya assertion anti-kosong (lolos-palsu)

Expand Down
41 changes: 19 additions & 22 deletions docs/ISSUES.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,28 +21,25 @@
> **DITUTUP FORMAL 19 Jul** (W-1 gate LULUS). Tak ada milestone aktif. Sisa = P3 oportunistik.
> **20 Jul:** lisensi repo di-LOCK **Apache 2.0** (ADR-029) · **W-2 DITOLAK** owner (lihat di bawah).

### P-1 — Sisa langkah membuka repo ke publik [P2, aksi OWNER — bukan kerja agent]
Repo **masih private** (keputusan owner 20 Jul: "belum publik sampai benar-benar pas"). Fondasinya sudah siap
(ADR-029 Apache 2.0 + `LICENSE`/`NOTICE`, `SECURITY.md`, CI lintas-OS hijau, audit history nol secret/PII).
**Prasyarat mendesak (20 Jul, jangan dilewat):** history di-**rewrite** (hapus alamat email pribadi owner dari
metadata 25 commit — G-61) → **clone di mesin Windows WAJIB dihapus & di-clone ulang**. `git pull` biasa di sana
akan menarik balik commit lama ber-email dan menghidupkannya kembali di `origin` pada push berikutnya.

Tiga langkah tersisa, **semua di tangan owner**, urut:
1. **Flip visibility** ke publik (Settings → General → Danger Zone → Change repository visibility).
2. **SEGERA setelah itu: aktifkan GitHub private vulnerability reporting** (Settings → **Advanced Security**,
UI lama: *Code security and analysis* → "Private vulnerability reporting" → Enable).
3. **Tag `v0.1.0`** dari commit ber-CI-hijau (paling awal: `b9983e0`) + GitHub Release. **Bukan `npm publish`**
(`"private": true` disengaja; G-59 membuat npm bukan kanal distribusi yg sehat untuk repo ini).

> **KOREKSI urutan (20 Jul, diverifikasi):** versi awal item ini menaruh "aktifkan PVR" SEBELUM flip visibility —
> **itu tak mungkin**. PVR hanya tersedia untuk repo **publik**; selama private, `GET /repos/:o/:r/private-vulnerability-reporting`
> balas **404** dan `security_and_analysis` = `null` (dicek langsung via `gh api`, bukan diasumsikan). Konsekuensi
> yang diterima: ada **jeda singkat** pasca-flip di mana link "Report a vulnerability" di `SECURITY.md` masih 404 —
> perkecil dgn mengerjakan langkah 2 langsung setelah 1; kontak alternatif (kampusmerah.com) sudah ada di
> `SECURITY.md` sebagai jaring.
**Catatan:** `.claude/skills/*` sengaja ikut publik (README §Metodologi) — bila owner berubah pikiran, keluarkan
**sebelum** repo publik; setelah publik, history-nya sudah beredar.
### ~~P-1 — Membuka repo ke publik + rilis v0.1.0~~ [SELESAI 21 Jul — repo PUBLIK, rilis LIVE]
**TUNTAS.** Ketiga langkah owner dijalankan & diverifikasi via GitHub API (sesi 21 Jul, Linux):
1. ✅ **Visibility → public** (`private:false`, `visibility:public`).
2. ✅ **Private vulnerability reporting aktif** (dikonfirmasi owner; tool MCP tak ekspos field ini — cek manual di Settings).
3. ✅ **Tag + Release `v0.1.0`** dari commit ber-CI-hijau `f30e915` (target `main`) — dipublish owner via GitHub UI
(`draft:false, prerelease:false`, author `ziffan`, id `357080209`). **Bukan `npm publish`** (`"private":true`; G-59).

**Verifikasi keamanan pasca-publik:** G-61 dicek ulang di sisi remote — **182 commit remote (2 halaman API) = 100%
noreply**, nol email pribadi terekspos. Lisensi Apache-2.0 terdeteksi GitHub · description · 5 topics · CI hijau ·
**website About** = `https://ziffany.firdinal.my.id/` (diisi owner) · **tab Issues dimatikan** (`has_issues:false`,
konsisten posture demo-only CONTRIBUTING). `.claude/skills/*` sengaja ikut publik.

> **Gotcha sesi ini (G-62):** langkah tag/Release **tak bisa** dijalankan agent dari sesi ini — `git push origin <tag>`
> ditolak **403** oleh egress proxy (push di-scope ke branch designated saja; ref tag bukan branch), dan GitHub MCP tak
> punya tool `create_release`/create-ref-tag (hanya `create_branch` = `refs/heads`). Langkah owner-action ini memang
> harus dari UI/mesin owner. Verifikasi via API tetap bisa dari sesi (read).

> **Residual GC (kejujuran, diterima):** commit pra-rewrite yang tak-terjangkau bisa diakses **bila SHA lama diketahui**
> (hanya ada di transcript sesi) sampai GitHub GC jalan — risiko mendekati nol. Kepastian penuh = minta GitHub Support GC.

### ~~W-2 — M-web.2 `acca daemon --web` co-host~~ [DITOLAK owner 20 Jul]
Rencana: mount server web yang sama di daemon (flag `--web`), nilai = satu proses. **Ditolak owner:** `acca web`
Expand Down