Repository navigation
feat: move shell execution to the host and harden session journals - #255
Merged
Merged
Conversation
Shell tools now run on the host through the trusted kernel bridge instead of the removed kernel fence and credential-grant channel. Session journal persistence, locking, deletion, and subagent resume paths are hardened alongside the installer runtime lock and docs migration.
Windows clippy -D unused-imports rejects the module-level super import when the module's only test is Unix-gated.
Reuse verified Windows ZIP packs and atomic installer locks. Recognize the current bubblewrap namespace-unavailable diagnostic without suppressing unrelated failures. Run the replacement kernel credential and protocol tests instead of an obsolete filter.
This was referenced Nov 6, 2026
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.
Summary
Moves shell execution to the host through the trusted kernel bridge and removes the kernel-side fence and credential-grant channel. Alongside that redesign, this hardens session journal persistence, locking and deletion, fixes the installer runtime cache lock, and migrates the user guide.
Key changes:
kernel_fence,credential_unix,grants.py, Windows credential delivery, and the kernel-process sandbox e2e test.host_bash,local_bash) and the server kernel-host shell bridge.docs/usage.mdtodocs/user-guide.mdand update all README links.Scope
228 files changed, +12603 / -6472.
Validation
Run on the exact content of this commit (clean worktree,
HEAD = 0829d7248089deb119565b0ff0cfdaa1c1188614):cargo fmt --all -- --checkPASScargo clippy --locked --workspace --all-targets -- -D warningsPASScargo test --locked --workspace --no-fail-fastPASS, zero failed targets (server lib 521 passed / 0 failed / 2 ignored)bun test scripts/runtime/packs.test.ts3/3 PASSsh -n install.shPASSCI has not been run on this branch yet.
Known limits and notes
.github/workflows/ci.ymlstill runscargo test -p devo-kernel credential_unix::tests, but this PR removescredential_unix. That step matches zero tests and does not validate the replacementsession::credential_env_testsorprotocol::tests. This is a known coverage gap left by the explicit no-CI-edit requirement; a follow-up should retarget those filters..github/workflows/benchmark-cli.ymlstill has the old step name "Verify detached Linux kernel fence". Cosmetic only.docs/usage.mdis renamed todocs/user-guide.md(88% similarity) rather than deleted outright.install.sh/scripts/runtimeruntime-lock fix duplicates fix(provider): propagate OpenAI Responses stream failures #254 commita0478335,docs/usage.mdcollides with fix(provider): propagate OpenAI Responses stream failures #254's edits, and fix(provider): propagate OpenAI Responses stream failures #254's Windows ZIP work also touchesscripts/runtime/packs.test.ts. If fix(provider): propagate OpenAI Responses stream failures #254 remains blocked, merge this PR first and rebase fix(provider): propagate OpenAI Responses stream failures #254 afterwards; resolve the ZIP/test overlap during that rebase, not here.Merge policy
Do not merge until checks on this exact HEAD are green and the scope has been reviewed.