feat(runtime-host): expose fenced Bash in managed coding - #87
Draft
zhiiw wants to merge 3 commits into
Draft
Conversation
zhiiw
force-pushed
the
codex/m5-external-effect-fencing-v1
branch
from
August 31, 2026 08:59
18ec4ae to
5dabf06
Compare
zhiiw
force-pushed
the
codex/m5-managed-shell-product-v1
branch
from
August 31, 2026 08:59
ce4fe31 to
deac6a9
Compare
zhiiw
force-pushed
the
codex/m5-external-effect-fencing-v1
branch
from
August 31, 2026 09:19
5dabf06 to
b40e5b3
Compare
zhiiw
force-pushed
the
codex/m5-managed-shell-product-v1
branch
from
August 31, 2026 09:20
deac6a9 to
9ba94e8
Compare
zhiiw
force-pushed
the
codex/m5-external-effect-fencing-v1
branch
from
August 31, 2026 09:26
b40e5b3 to
e962a7c
Compare
zhiiw
force-pushed
the
codex/m5-managed-shell-product-v1
branch
from
August 31, 2026 09:27
9ba94e8 to
20040fc
Compare
zhiiw
force-pushed
the
codex/m5-external-effect-fencing-v1
branch
from
August 31, 2026 09:39
e962a7c to
576fecb
Compare
zhiiw
force-pushed
the
codex/m5-managed-shell-product-v1
branch
from
August 31, 2026 09:39
20040fc to
d2d2237
Compare
zhiiw
force-pushed
the
codex/m5-external-effect-fencing-v1
branch
from
August 31, 2026 09:48
576fecb to
2461a9c
Compare
zhiiw
force-pushed
the
codex/m5-managed-shell-product-v1
branch
from
August 31, 2026 09:48
d2d2237 to
44f964b
Compare
zhiiw
force-pushed
the
codex/m5-external-effect-fencing-v1
branch
from
August 31, 2026 10:10
2461a9c to
3b1cab9
Compare
zhiiw
force-pushed
the
codex/m5-managed-shell-product-v1
branch
from
August 31, 2026 10:10
44f964b to
bee0c60
Compare
zhiiw
force-pushed
the
codex/m5-external-effect-fencing-v1
branch
from
August 31, 2026 10:31
3b1cab9 to
fab7ec7
Compare
zhiiw
force-pushed
the
codex/m5-managed-shell-product-v1
branch
from
August 31, 2026 10:31
01f89ca to
875614b
Compare
zhiiw
force-pushed
the
codex/m5-external-effect-fencing-v1
branch
from
August 31, 2026 11:05
fab7ec7 to
d285761
Compare
zhiiw
force-pushed
the
codex/m5-managed-shell-product-v1
branch
from
August 31, 2026 11:05
875614b to
3bdf632
Compare
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
Expose a foreground-only fenced Bash tool in the canonical
managed-coding-v2product profile.The Runtime remains the sole owner of the one-shot operation capability and provider result. Runtime Host admits the effect only after materializing the exact accepted tree into a disposable execution root and proving an enforcing platform sandbox. The surface rejects background execution, PTY, caller-selected paths, and boundary overrides. Windows continues to report the profile unavailable because arbitrary-shell AppContainer evidence is not yet complete.
This slice also:
managed-disposable-executions-v2namespace;Invariant
Owner: Runtime owns the linear operation/result; Runtime Host owns accepted-tree materialization and sandbox admission; ShellRun owns terminal effect evidence.
Atomic boundary: T1 freezes the external-effect descriptor before the operation capability can run. ShellRun terminal adoption is the only recovery path after an uncertain Host response.
Failure state: missing sandbox/admission fails before T1; uncertain post-T1 state parks instead of falling back or replaying.
Rollback: disable profile advertisement. Durable facts remain readable and no attached-checkout fallback exists.
Validation
gitoxide-helper-admission.yml.中文说明
摘要
把受约束的前台 Bash 接入唯一的
managed-coding-v2产品 profile。Runtime 继续独占一次性 operation capability 和 provider result;Runtime Host 只有在把 exact accepted tree 物化到一次性目录,并证明平台 sandbox 能强制执行后,才允许 Bash 运行。该工具明确拒绝后台、PTY、调用者指定 cwd 和 boundary override。Windows 因任意 shell 的 AppContainer 证据尚未闭环,继续不广告该 profile。
本切片同时完成:
managed-disposable-executions-v2namespace 中的 Host 崩溃残留;主要不变量
缺少能力时在 T1 前失败;T1 后状态不确定时 park,不 fallback、不重放、不触碰 attached checkout。
验证