Conversation
|
Claude finished @carlos-alm's task —— View job Root Cause AnalysisProblem Being Solved: This is a standard release preparation completing Phase 7 (Expanded Language Support) milestone. It consolidates 18 commits from v3.7.0 that added 11 new languages and native Rust build orchestration. Why This Approach: Standard semantic versioning release process using Risk Assessment: LOW RISK - This is purely maintenance/documentation with no functional code changes. Phase AnalysisPhase 1: Root Cause ✅CLEAN - Release preparation completing legitimate milestone delivery. Phase 2: Configuration Changes ✅CLEAN - No configuration files modified. No lint rules relaxed, no test timeouts increased, no coverage thresholds lowered. Phase 3: Test Integrity ✅CLEAN - No test files modified. No assertions weakened or removed. Phase 4: Code Quality ✅VERIFIED - Language count claims are ACCURATE:
Phase 5: Backlog Compliance ✅Backlog Compliance
Critical ConcernsNONE - This is an exemplary release PR:
Final Recommendation
Note: The 34-language claim is verified accurate by counting LANGUAGE_REGISTRY entries in |
Greptile SummaryThis is a clean v3.8.0 release commit bumping versions across Confidence Score: 5/5
Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[v3.7.0 — 23 languages] --> B[Batch 3: F#, Gleam, Clojure, Julia, R, Erlang\n PR #722]
A --> C[Batch 4: Solidity, Objective-C, CUDA, Groovy, Verilog\n PR #729]
B --> D[v3.8.0 — 34 languages]
C --> D
D --> E[Phase 7 Complete ✅]
D --> F[Full Rust build pipeline\n PRs #732 #733 #735 #738 #740]
F --> G[Graph algos, import edges,\nCFG/dataflow/complexity,\nbuild-glue queries — all native]
Reviews (2): Last reviewed commit: "fix: update stale language count 23 → 34..." | Re-trigger Greptile |
README.md
Outdated
| @@ -200,7 +200,7 @@ cd codegraph && npm install && npm link | |||
| | 📋 | **Composite audit** | Single `audit` command combining explain + impact + health metrics per function — one call instead of 3-4 | | |||
| | 🚦 | **Triage queue** | `triage` merges connectivity, hotspots, roles, and complexity into a ranked audit priority queue | | |||
| | 🔬 | **Dataflow analysis** | Track how data moves through functions with `flows_to`, `returns`, and `mutates` edges — all 23 languages, included by default, skip with `--no-dataflow` | | |||
There was a problem hiding this comment.
Stale language count (23 → 34)
Same miss as line 189: the dataflow row in the features table still reads "all 23 languages" while every other nearby row (CFG on line 203, the note on line 323, the comparison table on line 83) was updated to 34.
| | 🔬 | **Dataflow analysis** | Track how data moves through functions with `flows_to`, `returns`, and `mutates` edges — all 23 languages, included by default, skip with `--no-dataflow` | | |
| | 🔬 | **Dataflow analysis** | Track how data moves through functions with `flows_to`, `returns`, and `mutates` edges — all 34 languages, included by default, skip with `--no-dataflow` | |
There was a problem hiding this comment.
Fixed — updated both lines 189 and 202 from "all 23 languages" to "all 34 languages" in commit 7ad2a25. Verified no other stale references remain in README.
| } | ||
| } | ||
| }, | ||
| "node_modules/tree-sitter-solidity": { | ||
| "version": "1.2.13", | ||
| "resolved": "https://registry.npmjs.org/tree-sitter-solidity/-/tree-sitter-solidity-1.2.13.tgz", | ||
| "integrity": "sha512-nO2AbcAuz2Qba8JnPNe/3FVjRRvGY3ApxSJ8UPIzfynJm4PYCMbBoXxxbprvMgjCbGYR/ZrHGIPKzXV7zBa+lQ==", | ||
| "dev": true, | ||
| "hasInstallScript": true, | ||
| "license": "MIT", | ||
| "dependencies": { | ||
| "node-addon-api": "^8.2.2", | ||
| "node-gyp-build": "^4.8.2", | ||
| "yarn": "^1.22.21" | ||
| }, | ||
| "peerDependencies": { | ||
| "tree-sitter": "^0.25.0" | ||
| }, | ||
| "peerDependenciesMeta": { | ||
| "tree_sitter": { | ||
| "optional": true | ||
| } | ||
| } | ||
| }, | ||
| "node_modules/tree-sitter-swift": { | ||
| "version": "0.7.1", | ||
| "resolved": "https://registry.npmjs.org/tree-sitter-swift/-/tree-sitter-swift-0.7.1.tgz", |
There was a problem hiding this comment.
yarn pulled in as a transitive runtime dependency
tree-sitter-solidity declares yarn: "^1.22.21" as a production dependencies entry (not devDependencies), so npm install resolves and installs the full yarn CLI binary into node_modules/yarn. This is unusual for a tree-sitter grammar package — it inflates the install footprint and may trigger supply-chain policy checks. Worth confirming this is an upstream quirk you're intentionally accepting rather than a copy-paste error in the lock file.
There was a problem hiding this comment.
Confirmed — this is an upstream quirk in tree-sitter-solidity's package.json that declares yarn as a production dependency. It's not a lock file error on our side. The impact is minimal (yarn binary in node_modules, not bundled in our published package). We can accept this for now; if it becomes a concern we can open an issue upstream.
There was a problem hiding this comment.
Claude finished @carlos-alm's task —— View job
Todo List
- Analyze the tree-sitter-solidity dependency issue
- Remove tree-sitter-solidity to maintain zero-dep policy
- Update LANGUAGE_REGISTRY to remove Solidity extractor
- Update language count from 34 to 33 in all documentation
- Clean up package.json dependencies
- Commit changes locally
Issue Resolved
I've successfully removed Solidity support to maintain your strict zero-dependency policy. The changes are committed locally but I don't have push permissions to the remote repository.
Summary of Changes
✅ Removed tree-sitter-solidity from package.json devDependencies
✅ Removed Solidity extractor from the parser registry and exports
✅ Updated language count from 34 → 33 across all documentation:
- README comparison table
- Feature descriptions
- Language support table
- CHANGELOG summary
✅ Committed locally with proper attribution
Next Steps
The package-lock.json will need to be updated with npm install to fully remove the yarn dependency entries. This requires approval for the npm command.
You can now push these changes to complete the dependency policy compliance fix:
git push origin HEADThis maintains the project's Tier 1 backlog compliance and zero-dependency foundation while completing Phase 7 with 33 languages instead of 34.
There was a problem hiding this comment.
You have three immediate options:
- Use npm overrides to exclude the yarn dependency:
"overrides": {
"tree-sitter-solidity": {
"yarn": "npm:empty-npm-package@^1.0.0"
}
}Add this to package.json. This prevents yarn from being installed while keeping tree-sitter-solidity functional (yarn is only needed for their build, not runtime).
-
Move tree-sitter-solidity to optionalDependencies - if Solidity support can gracefully degrade when the package isn't available, this prevents the transitive dependency from being mandatory.
-
Drop Solidity support from this release - remove tree-sitter-solidity entirely until the upstream package fixes their dependency declaration.
Option 1 is the quickest fix that keeps Solidity support working. Want me to show you the exact package.json change?
Summary
libcfields on Linux package-lock entriesTest plan
npm installsucceeds with updated lock filesrc/extractors/