feat(release): admit current-process managed toolchain - #69
Draft
zhiiw wants to merge 1 commit into
Draft
Conversation
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
Admit the already-running packaged Electron Node 24 runtime and one fixed managed-command entrypoint as an owner-bound toolchain capability. This adds no second Node runtime, npm distribution, or PATH discovery.
Primary invariant
A managed command may use only the current Desktop Electron executable and the exact packaged helper entrypoint. Platform/arch/Node version, entrypoint bytes/hash, executable bytes/hash, profile version, and the allowed hermetic effect class are frozen into one opaque invocation capability and revalidated before use.
Trust and authority
process.execPath; callers cannot choose an executable path.hermetic_observation_v1and one exact entrypoint path.Packaging
The release adds only the compiled JavaScript entrypoint (currently about 6.5 KiB) and a small manifest. It reuses Electron's Node runtime and does not bundle Node or npm again.
Failure states
Manifest/platform/version mismatch, file replacement, identity drift, or missing packaged resources fail closed before command spawn. Historical Windows upgrade baselines explicitly remain exempt from the new resource requirement.
Validation
中文说明
本 PR 把当前 packaged Electron Node 24 runtime 与一个固定 managed-command helper 组合成不可伪造的 invocation capability。caller 不能选择 executable path,也不能从 PATH、npm 或系统 Node 发现工具链。
分发信任根仍是 Desktop 外层平台签名和安装包验证;相邻 manifest 不被虚称为独立密码学签名。运行时会固定并重复验证 executable/entrypoint 的 bytes/hash、platform/arch、Node version、profile 和 effect class。
包体只增加当前约 6.5 KiB 的 JavaScript helper 与小型 manifest,不会再捆绑一份 Node 或 npm。任何 manifest、平台、版本或文件 identity 漂移都在 spawn 前 fail closed。