Implement controlled app launch (T-401)
This commit is contained in:
+8
-3
@@ -3,12 +3,12 @@ id: T-401
|
||||
title: 进程检测、受控启动与切换临界区复查
|
||||
phase: 4
|
||||
deps: [T-303, T-615]
|
||||
status: TODO
|
||||
status: DONE
|
||||
created: 2026-07-19
|
||||
issue: null
|
||||
context_ref: null
|
||||
context_ref: d0cf3333946af1eaace7b9c7f1edc58c38891f4d
|
||||
claim_branch: null
|
||||
work_branch: null
|
||||
work_branch: agent/codex/T-401
|
||||
write_paths:
|
||||
- docs/tasks/T-401.md
|
||||
- core/application/install/
|
||||
@@ -17,6 +17,9 @@ write_paths:
|
||||
- core/storage/
|
||||
- app-modern/platform/windows/
|
||||
- app-win7/platform/windows/
|
||||
- app-modern/go.mod
|
||||
- app-win7/go.mod
|
||||
- app-win7/go.work.sum
|
||||
- app-modern/cmd/softbox/
|
||||
- app-win7/cmd/softbox/
|
||||
- docs/api.md
|
||||
@@ -65,3 +68,5 @@ T-303 已定义 `TargetStateChecker` 并在 staging 前拒绝运行中的旧版
|
||||
## 执行记录
|
||||
|
||||
- 2026-07-19:正式落成。依据 Phase 3 交叉复核冻结 Toolhelp 身份匹配、启动元数据、受控启动、授权注入和 switch 临界区复查;明确 O3、退出协议、许可证策略与 T-601 真机验证的边界。
|
||||
- 2026-07-19:领取任务,基于 `d0cf3333946af1eaace7b9c7f1edc58c38891f4d` 在 `agent/codex/T-401` 执行;先重新记录基线,再按任务规格实现。
|
||||
- 2026-07-19:完成。`installed-app.json` 新安装写入受验证启动元数据;`application/launch` 只接受 app ID,按受控 current/普通 entrypoint、兼容、授权、精确运行状态和平台启动器顺序 fail closed。双端 Windows 平台以 Toolhelp32 + 完整映像绝对路径匹配、`RtlGetVersion` 兼容判断和无参数受控启动(管理员包固定 `runas`)实现,非 Windows stub 明确返回不支持。更新在 current→backup 紧邻前复查并清理拒绝的 staging,旧 current/记录不变;首次安装跳过复查。当前 cmd 没有可信 Catalog、许可证或 download 消费源,因此未注入 allow-all 授权、未伪装端到端启动按钮;Gio Layout 仍无 I/O。验证通过:`go -C core vet ./...`、`go -C core test -count=1 ./...`、`go -C core test -count=10 ./application/install ./application/launch ./installer`、两端 Windows amd64 构建、`./scripts/verify_phase0.ps1`、`python scripts/validate_agent_context.py`、`python scripts/validate_harness_governance.py`。
|
||||
|
||||
Reference in New Issue
Block a user