feat(runtime): fence managed shell external effects - #86
Draft
zhiiw wants to merge 1 commit into
Draft
Conversation
zhiiw
changed the base branch from
codex/m5-managed-node-transform-product-v1
to
codex/m5-canonical-managed-profile-v2
August 31, 2026 08:22
zhiiw
force-pushed
the
codex/m5-external-effect-fencing-v1
branch
7 times, most recently
from
August 31, 2026 10:31
3b1cab9 to
fab7ec7
Compare
zhiiw
force-pushed
the
codex/m5-external-effect-fencing-v1
branch
from
August 31, 2026 11:05
fab7ec7 to
d285761
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
Primary invariant
After an external-effect T1 exists, the operation may run only once inside the owner-issued ShellRun fence. The live result remains Runtime-owned, the local process claim remains ShellRun-owned, and no generic unfenced Bash fallback is permitted.
Atomic boundary and failure states
The admission owner validates arguments, observes the accepted head, materializes the exact accepted tree, and issues the linear capability before T1. Missing claims can later settle as command-not-started; active or orphaned claims park; terminal ShellRuns are adopted by their exact source-operation identity. This slice does not expose managed Bash to Desktop/CLI yet.
Validation
git diff --checkStack
Base:
codex/m5-managed-node-transform-product-v1(PR #84)中文说明
摘要
主要不变量
外部副作用 T1 一旦存在,operation 只能在 owner 签发的 ShellRun fence 内执行一次。实时结果归 Runtime,进程 claim 归 ShellRun authority,禁止回落到普通未围栏 Bash。
原子边界与失败状态
Admission owner 在 T1 前完成参数校验、accepted head 读取、exact tree 物化和线性 capability 签发。之后无 claim 可证明 command-not-started;active/orphaned 必须 park;terminal ShellRun 只能按 exact source-operation identity 采用。本切片尚不向 Desktop/CLI 开放 managed Bash。
验证
git diff --check通过。