Skip to content

refactor(commands): consolidate 78 commands → 12 focused commands #195

Description

@Wolfvin

Context

CodeLens saat ini punya 78 commands. Mayoritas broken, tidak teruji, atau duplikat satu sama lain. Ini bukan fitur — ini graveyard of unfinished ideas.

Test batch yang dilakukan mengkonfirmasi:

  • Beberapa commands tidak exist tapi masih muncul di --help (god-module, routes, delta, guard, llm, memory)
  • Beberapa crash dengan input normal (benchmark, ownership, fix, lsp-status, self-analyze)
  • Mayoritas sisanya tidak bisa diverifikasi hasilnya benar

Tujuan

Konsolidasi dari 78 ke 12 command focused dengan cara merge/absorb command yang overlap.

Mapping Konsolidasi (12 command baru)

Command Baru Menyerap Command Lama
scan scan, init, rescan
search symbols, semantic-query, query-graph, search
context context, outline, trace, orient
deps affected, dependents, circular, import-snapshot
audit dead-code, complexity, smell, staleness, god-module, perf-hint, side-effect
security secrets, vuln-scan, taint, binary-scan, regex-audit
summary summary, dashboard, arch-metrics, architecture
impact impact, diff, dataflow
api-map api-map, routes, graph-schema
doctor doctor, env-check, lsp-status
history history, ownership, git-status
graph query-graph (raw Cypher, untuk power user)

Commands yang Di-drop Total

Commands berikut di-remove karena broken, tidak ada value, atau scope terlalu jauh dari core use case:

adr, a11y, handbook, ask, serve, sessions, watch, registry-validate, rule-test, rule-validate, artifact-scan, css-deep, debug-leak, detect, export-snapshot, refactor-safe, resolve-types, stack-trace, migrate, benchmark, fix, self-analyze, lsp-status, delta, guard, llm, memory (sebagai standalone command)

Cara Implementasi per Command Baru

Setiap command baru harus:

  1. Punya --check flag untuk pilih sub-analysis, atau default jalankan semua
  2. Tetap terima --format compact / --format json
  3. Output stats yang konsisten: {"s":"ok", "st":{...}, "r":[...]}

Contoh penggunaan:

codelens audit <workspace>                       # semua checks
codelens audit <workspace> --check dead-code     # hanya dead-code
codelens audit <workspace> --check complexity,smell  # pilih beberapa

codelens search <workspace> "google auth"             # semantic search (default)
codelens search <workspace> "google auth" --mode symbol  # exact symbol
codelens search <workspace> "MATCH (n) WHERE n.id CONTAINS x" --mode graph  # Cypher

codelens deps <workspace> --check circular       # circular deps
codelens deps auth/foo.ts --check affected       # affected files
codelens deps auth/foo.ts --check dependents     # direct dependents

Definition of Done

  1. Semua 12 command baru berfungsi saat di-run di codebase test: fought/extension_source/ts
  2. Semua command lama yang di-absorb masih bisa dipanggil tapi print deprecation warning + redirect ke command baru (backward compat 1 versi)
  3. --help hanya menampilkan 12 command baru (command lama tersembunyi dari help, tapi masih bisa dipanggil)
  4. README.md diupdate dengan tabel mapping baru
  5. File .py di scripts/commands/ untuk command yang di-drop total dihapus

Checklist Laporan Worker

  • List 12 command baru yang sudah diimplementasi + contoh output masing-masing
  • List command lama yang masih ada sebagai deprecated aliases
  • List command yang dihapus total
  • Hasil codelens --help (hanya 12 command yang muncul)
  • Satu test run per command baru di codebase fought/extension_source/ts

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions