feat(topology): recover circular-deps, unused-code + coverage per sub-package (#78) - #120
Merged
Merged
Conversation
β¦-package (#78) Phase 2b, increment 1. These three project-built checks are package-script-based (run_profiled) exactly like the cluster A/B checks, but ran only at the scan root β so on an undeclared fan-out (a thin orchestrator over real packages one level down) they saw the root's missing scripts and produced a single root-level skip, never measuring the sub-packages. - circular-deps is absorbed into cluster B (it IS dependency-graph health, and sits contiguously after it). - a new cluster C wraps unused-code + coverage in the same recover loop. Both now iterate over the detected assessment roots, run IN each sub-package, and record namespaced (backend/coverage, frontend/unused-code) via SLUG_NS β honest skips where a package lacks the script, never a false pass. A single package / declared workspace runs one iteration at "." with SLUG_NS empty β bare slugs, byte-identical to before (verified end-to-end). The scc/lizard measurement arms (complexity, duplication, codebase-stats) remain whole-tree β that's increment 2 (per-package off the single scc walk + per-package engine routing). Refs #78. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
#78 Phase 2b, increment 1. Three project-built checks β
circular-deps,unused-code,coverageβ are package-script-based (run_profiled) exactly like the cluster A/B checks, but ran only at the scan root. On an undeclared fan-out (a thin orchestrator over real packages one level down) the root has none of those scripts, so each produced a single root-level skip and the sub-packages were never measured.What changed (
bin/checkup.sh)circular-depsabsorbed into cluster B β it is dependency-graph health and sits contiguously right after it; the loop-close just moves past it.unused-code+coveragein the same recover loop.Both now iterate the detected assessment roots, run in each sub-package, and record namespaced (
backend/coverage,frontend/unused-code) viaSLUG_NSβ with honest skips where a package lacks the script, never a false pass.Verification
circular-deps/unused-code/coveragenow emit per-package records (backend/*,frontend/*); packages without a given script skip honestly..,SLUG_NSempty β bare slugs (coverage.json, not./coverage), no namespaced variants β byte-identical to before.test/topology.test.sh(27),run-tool(43),detect(12) green;shellcheck --severity=errorclean;bash -nclean.Not in this PR
The scc/lizard measurement arms (
complexity,duplication,codebase-stats) still run whole-tree β that's increment 2 (per-package off the singlescc --by-filewalk + per-package engine routing), tracked in #78.Refs #78.
π€ Generated with Claude Code