aws-samples / aws-samples/sample-autonomous-cloud-coding-agents
chore(deadcode): ratchet down the 85 pre-existing unused exports/types (follow-up to #607)
- 主要言語
- TypeScript
- スター
- 143
- フォーク
- 46
- 平均マージ
- 3日 10時間
- マージ済み PR(30日)
- 24
説明
Follow-up to #607 (PR #673).
After #673 re-greened the dead-code ratchet, the knip baseline holds at **85** — all of it pre-existing drift, no longer masked by the devDep/false-positive noise:
| category | count |
|---|---|
| \`exports\` | 44 |
| \`types\` | 41 |
## Why this matters
The ratchet job (\`check:deadcode-ratchet\`) is **advisory / non-blocking** today (\`continue-on-error: true\`). Its stated milestone is to *"flip to blocking once the baseline is driven to zero."* Because it is non-blocking, roughly 7 genuine unused export/type regressions drifted into \`main\` unnoticed inside the +13 that #607 reconciled. Every merge that adds dead code under a non-blocking gate pushes the flip-to-blocking milestone further out.
## Ask
Chip the 85 down over one or more scoped PRs, lowering \`knip-baseline.json\` \`count\` in the same PR each time to lock in the gain (per the baseline's own guidance). Removing unused exports/types requires per-symbol analysis — some may be public API surface or referenced dynamically — so this is deliberately **not** a single bulk-delete.
Reproduce the current list:
\`\`\`
node_modules/.bin/knip --reporter json | jq '[.issues[] | {file, exports: (.exports // [] | map(.name)), types: (.types // [] | map(.name))}] | map(select((.exports|length)>0 or (.types|length)>0))'
\`\`\`
Once the count reaches 0, drop \`continue-on-error: true\` from the ratchet CI job to make it blocking.
コントリビューションガイド
調査の方向性
まず knip-baseline.json を読み、提供されている knip コマンドを実行して、未使用の export と型 85 件を調査します。各シンボルの参照を確認してから、そのシンボルを所有するソースファイルを変更し、対象を絞ったクリーンアップごとに baseline の件数を更新します。件数が 0 に達し、ratchet CI ジョブから continue-on-error: true が削除されれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- github-actions, node.js, typescript
- 領域
- ci-cd, tooling
- issue の種類
- リファクタリング
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 静か
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 45/100