Repository navigation
Move the skills to rig 0.45, rmcp 3, redis 1.8 and Rust 1.99.1 - #12
Merged
Merged
Conversation
Release audit of 26 October 2026 (plugin 0.7.0), following maintenance/release-audit.md. - building-rig-agents: rig 0.45 and rmcp 3. Memory moves to rig-memory stores (`.memory(MemoryStore)`, one-segment `.conversation(log)`); with no conversation every run now shares the agent's log, so the skill scopes it per user or uses `.without_memory()`. MCP via `McpConnection`, `PortableTool` and the tool typestate gone, `build_agent` connects through `Catalog::connect_with`, new 0.44 -> 0.45 VERSION-DRIFT table and Eval 4. - Rust 1.99.1 (FFI bool miscompile fix), otel collector 0.163.2, nextest 0.9.149, setup-uv v10.3.2, redis 1.8, rstest 0.28, httpmock 0.9; scaffold lock refreshed. - axum-service auth.md: `reject_tokens_expiring_in_less_than` is from jsonwebtoken 9.3, not new in 11. - Held: otel 0.33 set, testcontainers 0.28, NATS 2.15.
DenysMoskalenko
commented
Oct 26, 2026
rig 0.45 saves a .memory(..) run without .conversation(..) to one log named after the agent, shared by every caller. The rule moves from a Red Flags row into ## Important, and Eval 4 is renamed so it reads as the leak it tests.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Release audit of 26 October 2026, following
maintenance/release-audit.md. Plugin 0.6.0 → 0.7.0.Inventory
boolmiscompile; clippy unchanged;latest-rust-1.99.1is amd64 + arm64rmcp ^3.5;ClientInfo→ClientConfig#[case(..)]on an argument tightened, which no skill teaches (probe 19/19)MockExt,Mock.id, …); every taught call compiles (probe)auth.mdsaidreject_tokens_expiring_in_less_thanis new in 11; it arrived in 9.3.0opentelemetry_0_33(TrueLayer/reqwest-middleware#288 open)server_2_15; 2.14.8 still supportedrig 0.45 in building-rig-agents (0.4.1 → 0.5.0)
.memory(MemoryStore::default())plus a one-segment.conversation(log). With no conversation, 0.45 saves every run to one log named after the agent, so every caller shares it (0.44 skipped memory). The skill now scopes the log per user and uses.without_memory()with no id; an## Importantbullet, Memory Rules and Eval 4 follow. Durable backends implementAsyncStorewith compare-and-write appends; windows go throughview(.., LastMessages)andhistory(..)in a compiledask()helper.McpConnection::new(service).tools()replacestools_from_server;rmcp = "3",ClientConfig.PortableTooland the builder typestate are gone. Builder tools now join a sharedtool_server_handleregistry, so every agent on that handle advertises them (documented in TOOLS and AGENTS-CORE).Catalog::builtin().connect_with("vendor/model", ..), tested offline for all three vendors with an unlisted model.PromptError::Memory { error, response }. In-band error envelopes now carry a status, so a{"error":{"code":429}}body is a 429. Memory errors stay on the 503 catch-all, as decided.effect::Answered,on_outcomeper attempt, resume keeps answered calls,.connect(http)on configs,Arc<Message>histories, test doubles. Each change has a row in the new VERSION-DRIFT0.44 → 0.45table and its behaviour list.Owner decisions (asked with recommendations)
PromptError::Memory,SessionError::Changedincluded, stays 503 through the catch-all; this is documented.Catalog::connect_with. The other bucket-d proposals were not applied:DynModel::checkonce inbuild_agent, to flag a missingmax_tokenson an unlisted Claude id at startup.CompactionPolicy/Summarizerin place of the hand-rolledcompact_history. Whether it is thinking-binding safe is unverified.AgentRunner::memory(store)for a per-tenant store.Verified
make check: validator 0 errors; 93 bins and 27 test files compile clippy-clean; 71/71 snippet tests pass against Docker Postgres 18, Redis 8 and NATS 2.14.make check(clippy, deny, machete) andmake test15/15.make lint(prek): all hooks pass.cargo deny checkon both the scaffold lock and the full add-when-needed graph (935 packages, rig 0.45 + rmcp 3): ok./code-review xhigh. Every finding was checked against crate sources before acting on it. Fixed:bytesambiguous);AsyncStore;subin the log name;agent_errorcomment;memoryfeature note.build_agentand remapping memory errors (owner decisions);UnsupportedOptionarm (kept per the 12 Oct decision);