Skip to content

feat: move shell execution to the host and harden session journals - #255

Merged
wangtsiao merged 3 commits into
mainfrom
feat/trusted-kernel-host-shell
Nov 6, 2026
Merged

wangtsiao merged 3 commits into
mainfrom
feat/trusted-kernel-host-shell

Conversation

@wangtsiao

@wangtsiao wangtsiao commented Nov 6, 2026 •

Copy link
Copy Markdown
Contributor

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:

  • Remove kernel_fence, credential_unix, grants.py, Windows credential delivery, and the kernel-process sandbox e2e test.
  • Add host-side bash (host_bash, local_bash) and the server kernel-host shell bridge.
  • Harden session persistence, file locking, deletion, journal paths, and subagent resume paths.
  • Fix the installer runtime cache lock to fail closed and release only its own pid token.
  • Rename docs/usage.md to docs/user-guide.md and 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 -- --check PASS
  • cargo clippy --locked --workspace --all-targets -- -D warnings PASS
  • cargo test --locked --workspace --no-fail-fast PASS, zero failed targets (server lib 521 passed / 0 failed / 2 ignored)
  • bun test scripts/runtime/packs.test.ts 3/3 PASS
  • sh -n install.sh PASS

CI has not been run on this branch yet.

Known limits and notes

Merge policy

Do not merge until checks on this exact HEAD are green and the scope has been reviewed.

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.
@wangtsiao
wangtsiao merged commit 2ce02fe into main Nov 6, 2026
26 checks passed
wangtsiao added a commit that referenced this pull request Nov 6, 2026
Preserve the original #254 commits and integrate them with the verified main branch from #255. All 24 executed checks passed on 3704443.
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