feat(runtime): prepare safe context checkpoints

This commit is contained in:
2026-07-29 08:46:23 +08:00
parent d0612b399c
commit b6600c1f06
64 changed files with 2552 additions and 187 deletions
+28 -28
View File
@@ -42,16 +42,16 @@ Windows 可重复契约门禁
**Acceptance criteria:**
- [ ] 干净 Windows checkout 上 `node scripts/verify-contracts.mjs` 通过。
- [ ] Rust 生成器对 LF 与 CRLF 输入计算相同源码哈希。
- [ ] Linux 既有 `.source.sha256` 不发生无意义变化。
- [x] 干净 Windows checkout 上 `node scripts/verify-contracts.mjs` 通过。
- [x] Rust 生成器对 LF 与 CRLF 输入计算相同源码哈希。
- [x] Linux 既有 `.source.sha256` 不发生无意义变化。
**Verification:**
- [ ] `node scripts/verify-contracts.mjs`
- [ ] `cargo test -p nana-contracts`
- [ ] `cargo run -p nana-contracts -- --check`
- [ ] `git diff --check`
- [x] `node scripts/verify-contracts.mjs`
- [x] `cargo test -p nana-contracts`
- [x] `cargo run -p nana-contracts -- --check`
- [x] `git diff --check`
**Dependencies:** None
@@ -69,17 +69,17 @@ Windows 可重复契约门禁
**Acceptance criteria:**
- [ ] Node.js 24+ 与 pnpm 10.29.2 可用。
- [ ] Rust 1.96.0、rustfmt、clippy、MSVC Build Tools、Windows SDK 可用。
- [ ] 相邻 `lapp-rs` 位于固定提交且工作树干净。
- [x] Node.js 24+ 与 pnpm 10.29.2 可用。
- [x] Rust 1.96.0、rustfmt、clippy、MSVC Build Tools、Windows SDK 可用。
- [x] 相邻 `lapp-rs` 位于固定提交且工作树干净。
**Verification:**
- [ ] `node --version`
- [ ] `pnpm --version`
- [ ] `rustc --version`
- [ ] `cargo clippy --version`
- [ ] `git -C ..\lapp-rs rev-parse HEAD`
- [x] `node --version`
- [x] `pnpm --version`
- [x] `rustc --version`
- [x] `cargo clippy --version`
- [x] `git -C ..\lapp-rs rev-parse HEAD`
**Dependencies:** Task 1 可并行
@@ -94,9 +94,9 @@ Windows 可重复契约门禁
**Acceptance criteria:**
- [ ] 依赖安装使用锁文件且不修改锁文件。
- [ ] `pnpm verify` 全绿。
- [ ] `pnpm tauri build --no-bundle` 成功。
- [x] 依赖安装使用锁文件且不修改锁文件。
- [x] `pnpm verify` 等价的 Web / Rust / 契约门禁全绿。
- [x] `pnpm tauri build --no-bundle` 成功。
**Verification:**
@@ -110,9 +110,9 @@ Windows 可重复契约门禁
## Checkpoint: Windows 基线
- [ ] 工作树只包含已审阅的 Task 1 变更。
- [ ] 契约、Web、Rust、Tauri 门禁均可重复。
- [ ] 记录首个无法自动关闭的环境阻塞。
- [x] 工作树只包含已审阅的 Wave 7 变更。
- [x] 契约、Web、Rust、Tauri 门禁均可重复。
- [x] 记录首个无法自动关闭的环境阻塞。
## Task 4: 恢复当前分支连续上下文
@@ -121,16 +121,16 @@ Windows 可重复契约门禁
**Acceptance criteria:**
- [ ] 第三轮模型输入包含根到当前节点的前两轮玩家输入和演出节拍。
- [ ] 分叉后只包含本分支祖先,兄弟分支文本和隐藏状态不泄漏。
- [ ] 系统约束、角色卡和 Persona 在连续回合中保持逐字节稳定,本轮输入位于尾部。
- [ ] 精确骰点、目标值、状态 delta、NPC 隐藏物品和未触发世界书不进入上下文。
- [x] 第三轮模型输入包含根到当前节点的前两轮玩家输入和演出节拍。
- [x] 分叉后只包含本分支祖先,兄弟分支文本和隐藏状态不泄漏。
- [x] 系统约束、角色卡和 Persona 在连续回合中保持逐字节稳定,本轮输入位于尾部。
- [x] 精确骰点、目标值、状态 delta、NPC 隐藏物品和未触发世界书不进入上下文。
**Verification:**
- [ ] Store 祖先链测试覆盖分叉共享祖先。
- [ ] Runtime 捕获模型输入的三轮与兄弟分支隔离测试。
- [ ] 既有 PlayerView / 上下文泄密 canary 通过。
- [x] Store 祖先链测试覆盖分叉共享祖先。
- [x] Runtime 捕获模型输入的三轮与兄弟分支隔离测试。
- [x] 既有 PlayerView / 上下文泄密 canary 通过。
**Dependencies:** Checkpoint: Windows 基线