Skip to content

Commit 362925d

Browse files
committed
Merge feat/durable-mcp-call-log into dev
The durable MCP tool-call log for the Valkey store, plus the cdylib freshness guard and the first over-the-ABI coverage of those methods (the plugin was cdylib-only, so its single e2e test had never actually run; the rlib addition is what makes the artifact exist). Conflict resolutions: * .github/workflows/ci.yml -- UNPINNED busbar_ref from the core branch feat/1.5.5-mcp-integrated back to ${{ github.base_ref || github.ref_name }}. The pin's own note said to move back once that core line merged; core dev now exports all four methods (append_mcp_call, list_mcp_calls, list_mcp_call_principals, purge_mcp_calls_before), so the precondition is met and CI tracks the branch again. * store-valkey/src/tests.rs -- both sides KEPT. dev added the shared Store contract conformance suite; this branch added the call-log tests. git aligned them as one conflict because both were inserted at the same point; taking either side alone would have silently dropped the other.
2 parents bfebb3d + 737c38b commit 362925d

6 files changed

Lines changed: 701 additions & 56 deletions

File tree

.busbar-ref

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
c8780349cf66d09b891478d50766b89dc1ff224c 1.5.3
1+
a0d5f7f194a0d44afa043229e3309549143ceb3b 1.6.0

.github/workflows/ci.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,11 @@ jobs:
4343
plugin_kind: store
4444
plugin_alias: valkey
4545
service: valkey
46+
# UNPINNED from `feat/1.5.5-mcp-integrated` on merge to dev: that pin existed only because
47+
# core `dev` did not yet carry the durable MCP tool-call log contract, and the pin's own note
48+
# said to move back to the branch ref once that line merged. Core dev now exports all four
49+
# methods (append_mcp_call / list_mcp_calls / list_mcp_call_principals /
50+
# purge_mcp_calls_before), so the precondition is met and CI tracks the branch again.
4651
busbar_ref: ${{ github.base_ref || github.ref_name }}
4752
# base_ref FIRST: on a pull_request `github.ref_name` is '<number>/merge', not a branch
4853
# name, so this asked busbar for a branch called '5/merge' and the sibling checkout died

store-valkey-plugin/Cargo.toml

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,16 @@ description = "The Valkey store as a droppable busbar plugin — a cdylib export
99
license = "Apache-2.0"
1010

1111
[lib]
12-
crate-type = ["cdylib"]
12+
# cdylib for the C ABI delivery; `rlib` is REQUIRED for `cargo test` to emit the cdylib artifact AT
13+
# ALL. With `cdylib`-only, cargo builds a trivial "0 tests" harness for this package under `cargo
14+
# test` and never produces the .dylib/.so — so `tests/e2e.rs`, the ONLY over-the-ABI coverage of the
15+
# durable valkey path, found nothing and silently skipped, reporting GREEN with zero coverage. The
16+
# sibling store-postgres-plugin/store-mysql-plugin/store-sqlite-plugin manifests already carry both
17+
# crate-types for exactly this reason; this one had drifted. Verified, not assumed: with `cdylib`
18+
# only, `cargo test -p busbar-store-valkey-plugin` leaves no
19+
# `target/debug/deps/libbusbar_store_valkey_plugin.dylib` even after touching src/lib.rs; with
20+
# `rlib` added, cargo emits it on every build that recompiles the lib.
21+
crate-type = ["cdylib", "rlib"]
1322

1423
[dependencies]
1524
# busbar-store-valkey is now a SAME-REPO sibling crate (this plugin brings 100% of what it needs — the

0 commit comments

Comments
 (0)