Skip to content

fix(hooks): isolate initialization by host session - #144

Merged
escott- merged 1 commit into
mainfrom
fix/hook-session-init-20261002
Oct 3, 2026
Merged

escott- merged 1 commit into
mainfrom
fix/hook-session-init-20261002

Conversation

@escott-

@escott- escott- commented Oct 2, 2026 •

Copy link
Copy Markdown
Member

Starting or resuming a second session in the same checkout could reset the shared initialization gate and block an already initialized Claude/Codex session with “First call required.” Initialization is now tracked by the top-level host session ID in a separate, locked state file with atomic replacement. Replayed session-start events preserve successful setup, while each fresh session still requires initialization.

Record completion after a successful init or context result and include quick-start context/session grounding in the managed post-tool matcher. File-indexing disablement continues to allow initialization receipts. Existing hook settings are preserved.

Validation: 12 focused Rust tests passed, including parallel session isolation, replay, failed results, aliases, concurrent writers and matcher preservation. cargo fmt --all --check and cargo clippy --locked -p mcp-server --lib --tests -- -D warnings passed. The patched macOS helper is installed locally; real MCP calls across separate execution cells pass without repeated initialization. Installed-helper regression probes confirm fresh-session denial, failed-init denial, successful context quick-start and same-folder session isolation.


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Signed-off-by: escott- <escott05@gmail.com>
escott- pushed a commit that referenced this pull request Oct 3, 2026
Bumps hyper-util 0.1.21, tiktoken-rs 0.12.1, ignore 0.4.33, tokio-test 0.4.6 and console 0.16.6, with their lockfile updates (bstr, fancy-regex, regex, regex-syntax). The workspace version is unchanged.

Checked on ovh-desktop with #139, #140, #144 and #145 applied together on main 086e8f5: cargo fmt --check, clippy --locked --workspace --all-targets -D warnings, cargo test --locked --workspace --all-targets (2940 passed, 0 failed), account_connection_smoke (9 tests), plus the public-boundary, release-contract, DCO, workflow, grounding and adoption script tests and npm test.

Signed-off-by: escott- <escott05@gmail.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
escott- pushed a commit that referenced this pull request Oct 3, 2026
Bumps actions/checkout 7.0.1, actions/setup-node 7.0.0, actions-rust-lang/setup-rust-toolchain 2.0.0, Swatinem/rust-cache 2.9.2, actions/upload-artifact 7.0.1, actions/download-artifact 8.0.1 and actions/attest-build-provenance 3.0.0. Every pinned SHA was checked against the upstream tag or commit it names. The old rust-cache and attest-build-provenance pins were annotated tag object ids, not commit ids; the new pins are commit ids.

Checked on ovh-desktop with #139, #140, #144 and #145 applied together on main 086e8f5: cargo fmt --check, clippy --locked --workspace --all-targets -D warnings, cargo test --locked --workspace --all-targets (2940 passed, 0 failed), account_connection_smoke (9 tests), plus the public-boundary, release-contract, DCO, workflow, grounding and adoption script tests and npm test.

Signed-off-by: escott- <escott05@gmail.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@escott-
escott- marked this pull request as ready for review October 3, 2026 06:22
@escott-
escott- merged commit 07c5e0e into main Oct 3, 2026
1 of 10 checks passed
escott- added a commit that referenced this pull request Oct 3, 2026
Bumps the workspace, npm package, MCP Registry metadata, and the boundary self-test to 1.0.12, and adds the 1.0.12 changelog covering #139, #140, #144, and #145.

Updates rustls 0.23.40 -> 0.23.45 and rustls-webpki 0.103.13 -> 0.103.15 for RUSTSEC-2026-0285. The advisory predates 1.0.10 and was present in 1.0.10 and 1.0.11. No other lockfile entries change.

Checked on ovh-desktop against main 7918768 plus this change: cargo fmt --check, clippy -D warnings, cargo test (2940 passed, 0 failed), account_connection_smoke (9 tests), cargo audit and cargo deny (clean), plus the public-boundary, release-contract, DCO, workflow, grounding and adoption script tests and npm test.

Signed-off-by: escott- <escott05@gmail.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant