π΄ NOW β over-fires (11 issues, 8 false "breaking")
CHANGELOG.md (upstream)
βΌ cc-release-watch.mjs snapshot + gaps
βΌ cc-triage.mjs LLM extract
validateAndScore (:403) breaking β 20 ALL
β NO plugin-relevance gate βββ THE GAP
βΌ
cc-adoption-gaps.json (:690)
βΌ
cc-file-adoption-issues.sh (β₯10 floor)
βΌ
11 issues Β· 8 mislabeled breaking/20
π’ WITH verify gate (#3) + ceiling linter (#4)
CHANGELOG.md (upstream)
βΌ cc-release-watch.mjs snapshot + gaps
βΌ cc-triage.mjs LLM extract
validateAndScore (:403)
βΌ [+] plugin-relevance prefilter
DOWNGRADE (not drop): cap < 10
βΌ
cc-adoption-gaps.json real items only
βΌ
cc-file-adoption-issues.sh (β₯10 floor)
βΌ
~2 issues Β· real adoption only
[~] CC body ceiling-linter guards 147 prose strings
A drop would be invisible (no issue, no signal) β strictly worse than the over-fire it cures. The gate therefore downgrades score below the filer's floor (cc-file-adoption-issues.sh:78-80), keeping every item greppable in cc-adoption-gaps.json.