Mengapa
Ditemukan saat brainstorming "dream tool": sepanjang sesi audit CodeLens sebelumnya, BOS harus manual chain 2 command untuk memutuskan "aman dihapus?" — audit --check dead-code untuk cari kandidat, LALU context --check trace --name X --direction up untuk verifikasi bukan entry point. Ini persis pola yang CONTEXT.md sendiri sudah wanti-wanti ("status: dead ≠ aman dihapus"), tapi tool tidak menegakkan itu otomatis — agent yang lupa cross-check bisa salah rekomendasi hapus kode yang sebenarnya entry point.
Konteks
impact_engine.py::analyze_impact(name, workspace, action="delete") SUDAH ADA dan sudah menghitung affected/risk untuk skenario delete — infrastrukturnya sudah lengkap, cuma belum di-wire ke output dead-code.
Tujuan
Setiap item di audit --check dead-code hasil punya field tambahan deletion_safety (mis. safe / caution / entry_point_likely) yang dihitung dari analyze_impact(name, action="delete") secara otomatis — bukan langkah terpisah yang harus diminta.
Constraint
- JANGAN duplikasi logic
analyze_impact — panggil fungsi yang sudah ada.
- Perhatikan performa: kalau dead-code findings ratusan, jangan panggil
analyze_impact untuk semuanya secara serial tanpa cap — bisa lambat. Cap ke N item teratas (mis. top 20) atau beri flag --verify-impact untuk opt-in kalau defaultnya terlalu lambat di repo besar.
--lite output HARUS tetap include deletion_safety per item (ini justru poin paling actionable untuk decision-making agent).
Definition of Done
Mengapa
Ditemukan saat brainstorming "dream tool": sepanjang sesi audit CodeLens sebelumnya, BOS harus manual chain 2 command untuk memutuskan "aman dihapus?" —
audit --check dead-codeuntuk cari kandidat, LALUcontext --check trace --name X --direction upuntuk verifikasi bukan entry point. Ini persis pola yang CONTEXT.md sendiri sudah wanti-wanti ("status: dead ≠ aman dihapus"), tapi tool tidak menegakkan itu otomatis — agent yang lupa cross-check bisa salah rekomendasi hapus kode yang sebenarnya entry point.Konteks
impact_engine.py::analyze_impact(name, workspace, action="delete")SUDAH ADA dan sudah menghitung affected/risk untuk skenario delete — infrastrukturnya sudah lengkap, cuma belum di-wire ke outputdead-code.Tujuan
Setiap item di
audit --check dead-codehasil punya field tambahandeletion_safety(mis.safe/caution/entry_point_likely) yang dihitung darianalyze_impact(name, action="delete")secara otomatis — bukan langkah terpisah yang harus diminta.Constraint
analyze_impact— panggil fungsi yang sudah ada.analyze_impactuntuk semuanya secara serial tanpa cap — bisa lambat. Cap ke N item teratas (mis. top 20) atau beri flag--verify-impactuntuk opt-in kalau defaultnya terlalu lambat di repo besar.--liteoutput HARUS tetap includedeletion_safetyper item (ini justru poin paling actionable untuk decision-making agent).Definition of Done
audit --check dead-codefindings punya fielddeletion_safetystatus: deaddi registry