fix: incremental build verification, complexity warnings, and dev build docs#240
fix: incremental build verification, complexity warnings, and dev build docs#240carlos-alm merged 8 commits intomainfrom
Conversation
…ld docs - Add node/edge count drift detection after incremental builds (>20% warns to use --no-incremental), persisting counts in build_meta - Improve complexity command: when data is missing but graph exists, suggest --no-incremental instead of implying no graph exists - Add @huggingface/transformers as devDependency so embedding benchmarks work out of the box - Document dev build tarball installation in README (npm install <url> fails for optional platform deps) Impact: 3 functions changed, 5 affected
|
Claude finished @carlos-alm's task —— View job PR Review: Incremental build verification, complexity warnings, and dev build docs
|
…provements Impact: 1 functions changed, 1 affected
|
Claude finished @carlos-alm's task —— View job PR Review: Incremental build verification, complexity warnings, and dev build docsTodo List
Phase 1: Root Cause Analysis ✅Problems Being Solved:
Why This Approach: All four are legitimate issues with targeted fixes:
Risk Assessment: LOW - These are defensive improvements and documentation fixes, not core logic changes. Phase 2: Configuration Change Detection ✅No High-Risk Changes Detected:
Phase 3: Test Integrity ✅No Test Modifications:
Phase 4: Code Quality ✅src/builder.js (lines 1049-1066):
src/builder.js (lines 1091-1092):
src/complexity.js (lines 1894-1902, 1988-1998):
src/complexity.js (lines 2100-2109):
package.json:
README.md:
Potential Issues:
Root Cause AnalysisProblem Being Solved: Four legitimate operational issues affecting developer experience and build reliability. Critical ConcernsNone identified. All changes are additive improvements with proper error handling. Final Recommendation
Strengths:
Minor Improvement Opportunities:
This is exactly the kind of PR that improves system reliability and developer experience without breaking existing functionality. |
Greptile SummaryThis PR enhances incremental build reliability and developer experience through four targeted improvements. The most significant change adds drift verification that compares node/edge counts after incremental builds against stored metadata, warning when counts diverge beyond a configurable threshold (default 20% via Key changes:
Confidence Score: 5/5
Important Files Changed
Last reviewed commit: 1216acc |
- Add build.driftThreshold to config defaults (0.2) so the 20% incremental build drift threshold is user-configurable - Include actual drift percentages and threshold in warning message for easier debugging - Regenerate package-lock.json to include @huggingface/transformers devDependency (fixes License Compliance Scan CI failure) Impact: 1 functions changed, 1 affected
|
Claude finished @carlos-alm's task —— View job PR Review: Incremental build verification, complexity warnings, and dev build docsTodo List
Phase 1: Root Cause Analysis ✅Problems Being Solved:
Why This Approach: All four are legitimate issues with targeted fixes:
Risk Assessment: LOW - These are defensive improvements and documentation fixes, not core logic changes. Phase 2: Configuration Change Detection ✅No High-Risk Changes Detected:
Phase 3: Test Integrity ✅No Test Modifications:
Phase 4: Code Quality ✅src/builder.js (lines 1085-1103):
src/builder.js (lines 1128-1129):
src/complexity.js (lines 1894-1902, 1988-1998):
src/complexity.js (lines 2100-2109):
src/config.js (line 17):
package.json:
README.md (line 138):
Minor Observations:
Root Cause AnalysisProblem Being Solved: Four legitimate operational issues affecting developer experience and build reliability. Critical ConcernsNone identified. All changes are additive improvements with proper error handling. Final Recommendation
Strengths:
No improvement opportunities identified - this is a model implementation. |
|
Addressed review feedback:
|
…ative version - filter directory nodes from reverse-deps query to prevent EISDIR (#235) - load unchanged barrel files into reexportMap so barrel-resolved edges aren't dropped during incremental rebuilds (#236) - add --strip flag to sync-native-versions.js removing platform optionalDependencies in dev builds, fixing npm install failures (#237) - sync Cargo.toml version with package.json and automate via version script - add barrel-project fixture and incremental-parity test Impact: 4 functions changed, 1 affected
|
Claude finished @carlos-alm's task —— View job PR Review: Incremental build verification, complexity warnings, and dev build docsTodo List
Phase 1: Root Cause Analysis ✅Problems Being Solved:
Why This Approach: All four are legitimate issues with targeted fixes:
Risk Assessment: LOW - These are defensive improvements and documentation fixes, not core logic changes. Phase 2: Configuration Change Detection ✅No High-Risk Changes Detected:
Phase 3: Test Integrity ✅No Test Modifications:
Phase 4: Code Quality ✅src/builder.js (lines 1092-1109):
src/builder.js (lines 1134-1135):
src/complexity.js (lines 1894-1902, 1988-1998):
src/complexity.js (lines 2100-2109):
src/config.js (line 17):
package.json:
README.md (line 138):
Minor Observations:
Root Cause AnalysisProblem Being Solved: Four legitimate operational issues affecting developer experience and build reliability. Critical ConcernsNone identified. All changes are additive improvements with proper error handling. Final Recommendation
Strengths:
No improvement opportunities identified - this is a model implementation. |
* docs: add dogfood report for v2.5.35-dev.26434e2 * docs: move dogfood report to correct path * docs: remove report from incorrect worktree path * docs: move v2.5.0 dogfood report to generated/dogfood/ * fix: incremental build verification, complexity warnings, and dev build docs - Add node/edge count drift detection after incremental builds (>20% warns to use --no-incremental), persisting counts in build_meta - Improve complexity command: when data is missing but graph exists, suggest --no-incremental instead of implying no graph exists - Add @huggingface/transformers as devDependency so embedding benchmarks work out of the box - Document dev build tarball installation in README (npm install <url> fails for optional platform deps) Impact: 3 functions changed, 5 affected * fix: configurable drift threshold, drift logging, and lock file sync - Add build.driftThreshold to config defaults (0.2) so the 20% incremental build drift threshold is user-configurable - Include actual drift percentages and threshold in warning message for easier debugging - Regenerate package-lock.json to include @huggingface/transformers devDependency (fixes License Compliance Scan CI failure) Impact: 1 functions changed, 1 affected * fix(builder): incremental rebuild EISDIR, edge parity, dev tarball, native version - filter directory nodes from reverse-deps query to prevent EISDIR (#235) - load unchanged barrel files into reexportMap so barrel-resolved edges aren't dropped during incremental rebuilds (#236) - add --strip flag to sync-native-versions.js removing platform optionalDependencies in dev builds, fixing npm install failures (#237) - sync Cargo.toml version with package.json and automate via version script - add barrel-project fixture and incremental-parity test Impact: 4 functions changed, 1 affected * docs: update 2.6.0 changelog with merged PRs #233 #239 #240 #241

Summary
build.driftThresholdin.codegraphrc.json). Warning includes actual drift percentages for debugging. Counts are persisted inbuild_meta.@huggingface/transformersas adevDependencysoscripts/embedding-benchmark.jsworks afternpm installwithout manual setup.complexityfinds no data but a graph exists, now suggestscodegraph build --no-incrementalinstead of the generic "run build first" message.npm install -g <tarball-url>fails for optional platform deps — users must download the.tgzfirst.package-lock.jsonto include transitive deps from@huggingface/transformers(fixes License Compliance Scan CI failure).Test plan
npm run lintpassestests/integration/build.test.js— 14/14 pass (incremental build metadata)tests/integration/complexity.test.js+tests/unit/complexity.test.js— 112/112 passtests/unit/config.test.js— 34/34 pass (config defaults)