Skip to content

chore: release v3.6.0#710

Merged
carlos-alm merged 2 commits intomainfrom
release/3.6.0
Mar 30, 2026
Merged

chore: release v3.6.0#710
carlos-alm merged 2 commits intomainfrom
release/3.6.0

Conversation

@carlos-alm
Copy link
Copy Markdown
Contributor

Summary

  • Bump version to 3.6.0
  • Add CHANGELOG entry for all commits since v3.5.0
  • Update ROADMAP: Phase 7 (Expanded Language Support) now In Progress, Batch 1 complete, fix phase numbering in overview table
  • Update README: add 6 new languages to support table, update language counts (11 → 17), add missing Analysis Depth phase to roadmap list
  • Restore missing libc fields in package-lock.json Linux entries

Test plan

  • npm install succeeds with updated lock file
  • CHANGELOG renders correctly on GitHub
  • ROADMAP checklist items match actual codebase state
  • README language table includes all 17 supported languages

@claude
Copy link
Copy Markdown

claude bot commented Mar 30, 2026

Claude finished @carlos-alm's task —— View job


PR Review Complete ✅

Todo List

  • Phase 1: Root cause analysis - determine what problem this PR solves
  • Phase 2: Configuration change detection - check for high-risk config changes
  • Phase 3: Test integrity - verify no weakened assertions or disabled tests
  • Phase 4: Code quality review - examine changes for bugs and best practices
  • Phase 5: Backlog compliance - grade against zero-dep, foundation-aligned, problem-fit, breaking criteria
  • Final Assessment: Provide rating and recommendation

Phase 1: Root Cause Analysis ✅

Problem Being Solved: This is a legitimate release PR implementing Phase 7 (Expanded Language Support) from the roadmap. It adds 6 new languages (C, C++, Kotlin, Swift, Scala, Bash) and includes necessary version bumps and documentation updates.

Why This Approach: Standard release process using commit-and-tag-version - version bumps are consistent across all files, changelog is auto-generated from commit history, and roadmap/README are updated to reflect new language support.

Risk Assessment: Low risk - this is administrative release preparation, not code changes that could hide issues.

Phase 2: Configuration Change Detection ✅

No High-Risk Changes Detected:

  • No biome/linting rules modified
  • No test timeouts or coverage thresholds changed
  • No TypeScript strict mode flags disabled
  • Package-lock.json changes are legitimate - restores missing libc fields for Linux platform packages
  • Version bumps are consistent across package.json (3.6.0) and Cargo.toml (3.6.0)

Phase 3: Test Integrity ✅

No Test Weakening Detected:

  • No test files modified in this release commit
  • No removed or weakened assertions found
  • No eslint-disable or workaround comments added
  • Release only touches version files, documentation, and changelog

Phase 4: Code Quality ✅

Release Quality Assessment:

  • Version Consistency: ✅ All version references (package.json, Cargo.toml) consistently updated to 3.6.0
  • Changelog Accuracy: ✅ Changelog properly reflects commits since v3.5.0 with detailed feature descriptions
  • Documentation Updates: ✅ README language table shows 17 languages total, roadmap correctly marks Phase 7 as "In Progress"
  • Package-lock Integrity: ✅ Restored missing libc fields for Linux packages - legitimate fix, not configuration relaxation
  • No Code Changes: ✅ This PR contains zero actual code changes - only version bumps and documentation updates

Phase 5: Backlog Compliance ✅

Root Cause Analysis

Problem Being Solved: Standard release process - version bump to v3.6.0 after completing Phase 7.1 (6 new languages added)
Why This Approach: Following established semantic versioning and release workflow using commit-and-tag-version
Risk Assessment: Minimal - purely administrative release preparation

Backlog Compliance

  • Zero-dep: ✓ — No new runtime dependencies added in this release PR
  • Foundation-aligned: ✓ — Release process adheres to project principles and established workflow
  • Problem-fit: 4 — Language expansion directly addresses core problem of multi-language codebases being harder for AI agents to navigate
  • Breaking: No — This is a minor version bump with new language support, fully backward compatible
  • Tier: 1

Critical Concerns (if any)

None identified. This is a clean release PR following established process.

Final Recommendation

  • Rating: ⭐⭐⭐⭐☆ (4/5)
  • Action: APPROVE
  • Reasoning: This is a well-executed release PR that follows the project's established release process. All version bumps are consistent, the changelog accurately reflects new features, documentation is properly updated, and the package-lock.json fix restores legitimate metadata. No code quality issues or configuration changes that could mask problems. The only minor deduction is that this is routine release preparation rather than exceptional work, but it's exactly what a release PR should be.

@greptile-apps
Copy link
Copy Markdown
Contributor

greptile-apps bot commented Mar 30, 2026

Greptile Summary

This is a clean release PR bumping the project to v3.6.0, covering documentation updates, version synchronization across all manifests, and a lock file restoration. All three issues flagged in prior review rounds (CHANGELOG language count, multi-language differentiator row, and Phase 7 overview description) have been resolved in commit 78840a1.

Key changes:

  • Version bumped to 3.6.0 across package.json, package-lock.json, and crates/codegraph-core/Cargo.toml
  • CHANGELOG.md entry added with correct language count (17), full feature/fix/perf/refactor sections, and accurate PR links
  • README.md updated: language count 11 → 17 in comparison table and all feature descriptions, 6 new language rows added to the support table (with correct footnote 4 for C/Bash), multi-language differentiator row corrected, roadmap list renumbered to include the new "Analysis Depth" phase
  • ROADMAP.md phases 7 and 8 swapped (Expanded Language Support now 7, Analysis Depth now 8), section headings updated to match, Phase 7 marked "In Progress", Batch 1 marked complete with checkmark
  • package-lock.json libc fields restored (glibc/musl) for the three Linux napi-rs optional dependency entries, which is required for correct platform resolution during npm install on Linux

Confidence Score: 5/5

Safe to merge — all previously flagged issues are resolved and no new issues are present.

All three P1/P2 issues from prior review rounds are confirmed fixed in 78840a1. The version bump is consistent across all four manifests. The lock file libc restoration is correct for napi-rs Linux platform packages. Documentation is internally consistent across CHANGELOG, README, and ROADMAP. No logic, syntax, or data-integrity issues found.

No files require special attention.

Important Files Changed

Filename Overview
CHANGELOG.md Adds v3.6.0 release entry with correct language count (17), features, bug fixes, performance improvements, and refactors — all previously flagged issues are resolved.
README.md Updates language count from 11 to 17 throughout, adds 6 new language rows to the support table, fixes the multi-language differentiator row, and renumbers the roadmap list to include the new Analysis Depth phase.
docs/roadmap/ROADMAP.md Swaps Phase 7 (Expanded Language Support) and Phase 8 (Analysis Depth), marks Phase 7 as In Progress with Batch 1 complete, updates section headings to match, and adds checkmark to the 7.2 Batch 1 section.
package-lock.json Bumps version to 3.6.0 and restores missing libc fields (glibc for linux-arm64/x64, musl for linux-x64-musl) in napi-rs optional dependency entries.
package.json Version bump from 3.5.0 to 3.6.0.
crates/codegraph-core/Cargo.toml Version bump from 3.5.0 to 3.6.0 for the Rust core crate.
docs/roadmap/BACKLOG.md Updates "Last updated" date from 2026-03-29 to 2026-03-30.

Reviews (2): Last reviewed commit: "fix(docs): correct language count and up..." | Re-trigger Greptile

CHANGELOG.md Outdated

## [3.6.0](https://github.com/optave/ops-codegraph-tool/compare/v3.5.0...v3.6.0) (2026-03-30)

**Six new languages and a parser abstraction layer.** This release adds first-class support for C, C++, Kotlin, Swift, Scala, and Bash — bringing the total supported languages to 14. A new parser abstraction layer decouples language extractors from tree-sitter internals, making it straightforward to add more languages. The native Rust engine gains batched query methods for the read path, WAL corruption is fixed when native and JS connections overlap, and WASM call-AST extraction is restored for full engine parity.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Incorrect language count in CHANGELOG summary

The release summary states bringing the total supported languages to 14, but this is incorrect. The previous total was 11, and 6 new languages are added in this release (C, C++, Kotlin, Swift, Scala, Bash), making the new total 17 — which is reflected consistently everywhere else in this PR (README comparison table, feature descriptions, notes, etc.).

Suggested change
**Six new languages and a parser abstraction layer.** This release adds first-class support for C, C++, Kotlin, Swift, Scala, and Bash — bringing the total supported languages to 14. A new parser abstraction layer decouples language extractors from tree-sitter internals, making it straightforward to add more languages. The native Rust engine gains batched query methods for the read path, WAL corruption is fixed when native and JS connections overlap, and WASM call-AST extraction is restored for full engine parity.
**Six new languages and a parser abstraction layer.** This release adds first-class support for C, C++, Kotlin, Swift, Scala, and Bash — bringing the total supported languages to 17. A new parser abstraction layer decouples language extractors from tree-sitter internals, making it straightforward to add more languages. The native Rust engine gains batched query methods for the read path, WAL corruption is fixed when native and JS connections overlap, and WASM call-AST extraction is restored for full engine parity.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 78840a1 — corrected the language count from 14 to 17 in the CHANGELOG summary.

README.md Outdated
@@ -106,7 +106,7 @@ No config files, no Docker, no JVM, no API keys, no accounts. Point your agent a
| **💥** | **Git diff impact** | `codegraph diff-impact` shows changed functions, their callers, and full blast radius — enriched with historically coupled files from git co-change analysis. Ships with a GitHub Actions workflow |
| **🌐** | **Multi-language, one graph** | JS/TS + Python + Go + Rust + Java + C# + PHP + Ruby + HCL in a single graph — agents don't need per-language tools |
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Multi-language feature description still lists only original 9 language groups

The differentiator table entry for "Multi-language, one graph" still enumerates only JS/TS + Python + Go + Rust + Java + C# + PHP + Ruby + HCL (the original 11 languages), without mentioning the 6 new languages added in this release. While the total count is correctly updated to 17 in the comparison table and notes, this specific line is now inconsistent and could confuse readers.

Suggested change
| **🌐** | **Multi-language, one graph** | JS/TS + Python + Go + Rust + Java + C# + PHP + Ruby + HCL in a single graph — agents don't need per-language tools |
| **🌐** | **Multi-language, one graph** | JS/TS + Python + Go + Rust + Java + C# + PHP + Ruby + C + C++ + Kotlin + Swift + Scala + Bash + HCL in a single graph — agents don't need per-language tools |

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 78840a1 — added all 6 new languages (C, C++, Kotlin, Swift, Scala, Bash) to the multi-language differentiator row.

| [**6**](#phase-6--native-analysis-acceleration) | Native Analysis Acceleration | Rust extraction for AST/CFG/dataflow/complexity; batch SQLite inserts; incremental rebuilds; native DB write pipeline; full rusqlite migration so native engine never touches better-sqlite3 | **Complete** (v3.5.0) |
| [**7**](#phase-7--analysis-depth) | Analysis Depth | TypeScript-native resolution, inter-procedural type propagation, field-based points-to analysis, enhanced dynamic dispatch, barrel file resolution, precision/recall CI gates | Planned |
| [**8**](#phase-8--expanded-language-support) | Expanded Language Support | Parser abstraction layer, 23 new languages in 4 batches (11 → 34), dual-engine support | Planned |
| [**7**](#phase-7--expanded-language-support) | Expanded Language Support | Parser abstraction layer, 23 new languages in 4 batches (11 → 34), dual-engine support | **In Progress** (v3.6.0) |
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Phase 7 overview description not updated to reflect Batch 1 completion

The overview table still describes Phase 7 with the original plan: 23 new languages in 4 batches (11 → 34). Now that Batch 1 (6 languages) has shipped in v3.6.0, this description should reflect the remaining work. The README roadmap section was correctly updated to say 17 remaining in 3 batches (17 → 34), but the ROADMAP.md overview table was not.

Suggested change
| [**7**](#phase-7--expanded-language-support) | Expanded Language Support | Parser abstraction layer, 23 new languages in 4 batches (11 → 34), dual-engine support | **In Progress** (v3.6.0) |
| [**7**](#phase-7--expanded-language-support) | Expanded Language Support | Parser abstraction layer, 23 new languages in 4 batches (11 → 34), dual-engine support — Batch 1 (6 languages) shipped in v3.6.0; 17 remaining in 3 batches (17 → 34) | **In Progress** (v3.6.0) |

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in 78840a1 — updated the Phase 7 overview table to note Batch 1 shipped in v3.6.0 with 17 remaining in 3 batches.

- CHANGELOG: fix total language count from 14 to 17
- README: add 6 new languages to multi-language differentiator row
- ROADMAP: update Phase 7 overview to reflect Batch 1 completion
@carlos-alm
Copy link
Copy Markdown
Contributor Author

@greptileai

1 similar comment
@carlos-alm
Copy link
Copy Markdown
Contributor Author

@greptileai

@carlos-alm carlos-alm merged commit 412c952 into main Mar 30, 2026
32 checks passed
@carlos-alm carlos-alm deleted the release/3.6.0 branch March 30, 2026 16:01
@github-actions github-actions bot locked and limited conversation to collaborators Mar 30, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant