Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
54 commits
Select commit Hold shift + click to select a range
269e694
fix: remove hardcoded /Volumes/Workspace build-volume requirement
GQAdonis Aug 9, 2026
33d9207
chore(deps): update yanked chacha20 lock entries
forhappy Aug 27, 2026
a5dd153
fix(review): preserve strict URI node records
forhappy Sep 11, 2026
771a067
Merge pull request #310 from crabbuild/codex/fix-review-uri-history-r…
forhappy Sep 11, 2026
082ed33
feat(cli): add worktree-safe graph ensure (#309)
forhappy Sep 11, 2026
fed1578
Release Compass 0.3.24
forhappy Sep 11, 2026
8f6ca7d
Release Compass 0.3.24
forhappy Sep 11, 2026
5feaf1d
feat(review): make human output easier to scan
forhappy Sep 11, 2026
1c2a7b1
Merge pull request #312 from crabbuild/codex/improve-review-readability
forhappy Sep 12, 2026
239e689
fix(history): raise authoritative graph limit (#313)
forhappy Sep 12, 2026
bc93f09
Improve community detection quality with typed Leiden (#314)
forhappy Sep 12, 2026
8378aab
Optimize Leiden community detection performance (#315)
forhappy Sep 13, 2026
689809d
Make Leiden faster than Louvain (#316)
forhappy Sep 13, 2026
1c7c1ee
Release Compass 0.3.25
forhappy Sep 13, 2026
5a9081f
Release Compass 0.3.25
forhappy Sep 13, 2026
70246b6
Merge upstream/main (0.3.25) into docs/claude-md
GQAdonis Sep 13, 2026
b2303f0
fix(skillgen): re-pin canonical umbrella skill digest after upstream …
GQAdonis Sep 13, 2026
1363dca
chore(knowledge): session wiki updates
GQAdonis Sep 14, 2026
c68518e
chore(knowledge): session wiki updates before cleanup merge
GQAdonis Sep 15, 2026
91d5e86
Merge codex/legacy-artifact-boundary into docs/claude-md
GQAdonis Sep 15, 2026
33f473b
Merge fix/remove-hardcoded-build-volume into docs/claude-md
GQAdonis Sep 15, 2026
5cf573b
Improve query and path result fidelity (#318)
forhappy Sep 15, 2026
e90029c
Release Compass 0.3.26
forhappy Sep 15, 2026
137afee
Merge pull request #320 from crabbuild/codex/release-0.3.26
forhappy Sep 15, 2026
90eaccc
feat(output): add agent-readable query views (#321)
forhappy Sep 17, 2026
55b1a38
fix(rust): recover source-proven receiver calls (#319)
forhappy Sep 17, 2026
c4bc01c
Release Compass 0.3.27 (#322)
forhappy Sep 18, 2026
9e62ac2
fix(query): improve agent-facing graph answers
forhappy Sep 19, 2026
83d23d6
fix(ci): allow approved clipper license version
forhappy Sep 19, 2026
953a810
fix(ci): keep relevance corpus generator in sync
forhappy Sep 19, 2026
d249b36
fix(query): improve agent-facing graph answers (#323)
forhappy Sep 19, 2026
48be684
Release Compass 0.3.28
forhappy Sep 19, 2026
c769bcc
Merge pull request #324 from crabbuild/codex/release-0.3.28
forhappy Sep 20, 2026
ef1327f
chore(knowledge): session wiki updates before upstream 0.3.28 merge
GQAdonis Sep 21, 2026
393183c
feat: improve relationship recall and agent query contracts
forhappy Sep 21, 2026
d5a4d3c
Merge upstream 0.3.28, keep SurrealDB, support native Windows
GQAdonis Sep 21, 2026
2aabcfc
fix(test): use a closure for the empty-removals assertion
GQAdonis Sep 21, 2026
635b2c0
docs: record the withdrawn code_context envelope and its replacement
GQAdonis Sep 21, 2026
53a2c73
Merge origin/main into relationship correctness branch
forhappy Sep 21, 2026
862db74
fix query relationship paths and contract parity
forhappy Sep 21, 2026
9de6a73
docs: clarify read-only diff prerequisite
forhappy Sep 21, 2026
fe2a623
fix bounded impact traversal on direct call chains
forhappy Sep 21, 2026
cfeef42
build: refresh viewer contract assets
forhappy Sep 21, 2026
3fd246d
Merge pull request #325 from crabbuild/codex/agent-query-correctness
forhappy Sep 21, 2026
096623d
fix(surreal): match upstream trail ranking and count degree directly
GQAdonis Sep 21, 2026
60a2a77
docs: record the Surreal trail ranking and degree fixes
GQAdonis Sep 21, 2026
c5bd5b9
test(surreal): scope the colon-path store test to Unix
GQAdonis Sep 21, 2026
0272a4a
fix(code-query): degrade instead of aborting when source confinement …
GQAdonis Sep 22, 2026
11b396c
Merge pull request #5 from GQAdonis/fix/windows-source-confinement-de…
GQAdonis Sep 22, 2026
92ef1a8
ci: package only the crates that can be archived without a registry
GQAdonis Sep 22, 2026
f5f9b24
fix(output): render the source-confinement diagnostic in the agent view
GQAdonis Sep 22, 2026
220fc58
Merge upstream agent-query correctness, keep the SurrealDB projection
GQAdonis Sep 22, 2026
6b4b66a
Merge origin/docs/claude-md (Windows source-confinement degrade)
GQAdonis Sep 22, 2026
30cc515
docs: record compass-scoping-and-bounds review packets and session wiki
GQAdonis Sep 22, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 58 additions & 4 deletions .github/workflows/compass-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -150,11 +150,26 @@ jobs:
cargo test -p compass-query --test opencypher_tck --locked
python3 scripts/check_compassql_support.py

- name: Verify publishable crate archives
# `cargo package` rewrites every path dependency into a registry requirement and then
# resolves it against crates.io. This workspace is not published there: `compass-graph`
# and `compass-files` do not exist at all, and the `compass-cli` / `compass-core` names
# on crates.io belong to unrelated projects at unrelated versions (2.0.7,
# 0.1.0-alpha.1). So the step asserted an operation this project never performs, and
# failed for that reason rather than for any defect in the archives. No flag avoids it
# — `--no-verify`, `--no-metadata`, `--allow-dirty` and `--offline` were all tried, and
# the registry lookup is structural, not a verification or network step.
#
# Packaging is therefore checked on the crates that have no sibling path dependencies
# and so can be archived without a registry lookup. That still catches a missing file,
# an unpackageable path or a broken manifest — the defects this step exists to find —
# on the leaves the rest of the workspace is built from. Each was verified to package
# successfully before being listed here. Restore the workspace-wide form if these
# crates are ever published to crates.io.
- name: Verify the archivable crate archives
run: |
cargo package --workspace --locked --no-verify \
--exclude compass-transcribe \
--exclude compass-whisper
cargo package -p compass-model --locked --no-verify --allow-dirty
cargo package -p compass-files --locked --no-verify --allow-dirty
cargo package -p compass-ir --locked --no-verify --allow-dirty

- name: Verify cargo install and standalone launch
shell: bash
Expand Down Expand Up @@ -211,6 +226,43 @@ jobs:
- name: Verify bounded YAML and endpoint configuration
run: cargo test -p compass-files --test surreal_configuration --locked

# The Linux job above is the only place SurrealDB code used to run, so no
# embedded store had ever been opened on Windows. Qualify the shipped feature
# set natively: path handling, file locking, and directory removal while a
# store is open all differ there. RocksDB stays Linux-only; SurrealKV is pure
# Rust and is the engine shipped for Windows.
surrealdb-projection-windows:
runs-on: windows-2025
timeout-minutes: 90
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
- name: Install pinned Rust toolchain
uses: dtolnay/rust-toolchain@2c7215f132e9ebf062739d9130488b56d53c060c # master
with:
toolchain: 1.97.1
target: x86_64-pc-windows-msvc
- uses: Swatinem/rust-cache@e18b497796c12c097a38f9edb9d0641fb99eee32 # v2
with:
workspaces: .
key: surrealdb-projection-windows
# surrealdb-core hard-enables jsonwebtoken/aws-lc-rs, so aws-lc-sys is
# built for every SurrealDB feature and needs CMake plus NASM on MSVC.
- name: Install aws-lc-sys build prerequisites
run: |
choco install nasm --no-progress -y
echo "C:\Program Files\NASM" >> $env:GITHUB_PATH
shell: pwsh
- name: Qualify in-memory projection and native reads
run: cargo test -p compass-graphdb-surreal --test '*' --features mem --locked
- name: Qualify the embedded SurrealKV engine
run: cargo test -p compass-graphdb-surreal --test '*' --features surrealkv --locked
- name: Qualify fully wired SurrealKV surfaces
run: cargo test -p compass-core -p compass-query -p compass-cli -p compass-mcp --test '*' --features surreal-surrealkv --locked
- name: Compile the shipped embedded and standalone surfaces
run: cargo check -p compass-cli --features surreal-surrealkv,surreal-remote --locked
- name: Verify bounded YAML and endpoint configuration
run: cargo test -p compass-files --test surreal_configuration --locked

native-platforms:
name: ${{ matrix.target }}
strategy:
Expand Down Expand Up @@ -287,6 +339,8 @@ jobs:
checks: write
steps:
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6
- name: Install locked cargo-audit
run: cargo install cargo-audit --version 0.22.2 --locked
- name: Audit Rust dependencies
uses: rustsec/audit-check@858dc40f52ca2b8570b7a997c1c4e35c6fc9a432 # Node 24 update
with:
Expand Down

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
diff --git a/CHANGELOG.md b/CHANGELOG.md
index a6b2ece6..00000000 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,11 @@

## Unreleased

+- Upgrade the native MCP SDK from rmcp 2.2.0 to exactly 3.1.4 while preserving
+ stdio operation, the current HTTP session behavior, server identity, tool
+ names and input schemas, and resource inventory. Add `server/discover`
+ compatibility coverage against the pre-migration golden contract.
+
- Add a digest-pinned 500-question, AI-reviewed synthetic relevance matrix
covering all query classes, execute it in CI with strict ranking, recall,
intent, structural, no-answer, and work bounds, and keep its generated JSON
diff --git a/Cargo.toml b/Cargo.toml
index be09be20..00000000 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -83,7 +83,7 @@ realfft = "3.5.0"
regex = "1"
semver = "1"
self-replace = "1.5"
-rmcp = { version = "2.2.0", default-features = false, features = ["server", "transport-io", "transport-streamable-http-server"] }
+rmcp = { version = "=3.1.4", default-features = false, features = ["server", "transport-io", "transport-streamable-http-server"] }
rubato = "0.16.2"
flate2 = "1.1.9"
glob = "0.3.3"
diff --git a/crates/compass-mcp/Cargo.toml b/crates/compass-mcp/Cargo.toml
index f9c35440..00000000 100644
--- a/crates/compass-mcp/Cargo.toml
+++ b/crates/compass-mcp/Cargo.toml
@@ -28,6 +28,7 @@ compass-query = { path = "../compass-query", version = "0.3.7" }

[dev-dependencies]
rmcp = { workspace = true, features = ["client"] }
+sha2.workspace = true
tempfile.workspace = true

[lints]

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -8,6 +8,30 @@
names and input schemas, and resource inventory. Add `server/discover`
compatibility coverage against the pre-migration golden contract.

+- Extract storage-neutral partition records, stable typed-key construction, and
+ canonical JSON encoding into a dependency-light `compass-partition` crate.
+ Existing history APIs, encoded bytes, persisted formats, and round trips
+ remain compatible.
+
+- Honor `COMPASS_MAX_GRAPH_BYTES` consistently across canonical graph
+ preflight, snapshot publication, validation, and reads while retaining the
+ 2 GiB default and failing closed on invalid override values.
+
+- Add a deterministic, bounded canonical graph-size preflight after discovery,
+ so inputs estimated above the snapshot limit fail before project-wide
+ extraction with the existing actionable scope-reduction guidance.
+
+- Make oversized canonical graph failures actionable by naming `--exclude`
+ and `.compassignore` as safe ways to reduce publication scope. The CLI keeps
+ runtime exit code 1 and does not advertise the graph-byte override until the
+ snapshot publication path supports it. Oversized manifests now surface as
+ resource-limit failures rather than corruption failures.
+
+- Add manifest-only and bounded chunk-streaming reads for SQLite graph
+ snapshots. Production validation and reference generation now verify chunks
+ without retaining the canonical payload in one allocation, while the public
+ full-read API and store formats remain compatible.
+
- Add a digest-pinned 500-question, AI-reviewed synthetic relevance matrix
covering all query classes, execute it in CI with strict ranking, recall,
intent, structural, no-answer, and work bounds, and keep its generated JSON
diff --git a/docs/reference/configuration.md b/docs/reference/configuration.md
--- a/docs/reference/configuration.md
+++ b/docs/reference/configuration.md
@@ -112,6 +112,20 @@ applied as built-in safety skips, Git ignores, configured includes, configured
excludes, then command-line exclusions. Invalid configuration stops the build
instead of silently widening its scope.

+`vendor/` is deliberately not a built-in skip. Vendored directories can contain
+real Go source and can also be explicit workspace members, as Compass's vendored
+parser pack is. A language-neutral discovery layer cannot infer that this source
+is disposable from the directory name alone. Repositories that do not want
+vendored source in a graph should exclude it explicitly and reviewably:
+
+```bash
+compass init . --exclude 'vendor/**' --yes
+```
+
+The same pattern may be placed in `.compassignore`. Keeping this opt-out explicit
+preserves existing discovery behavior and applies consistently to builds and
+filesystem watching.
+
Common explicit options:

| Concern | Options |
Loading
Loading