feat(runtime): prepare safe context checkpoints
This commit is contained in:
+28
-28
@@ -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 基线
|
||||
|
||||
|
||||
+9
-6
@@ -15,7 +15,7 @@
|
||||
- [x] Rust 契约生成器按 LF 规范化源码。
|
||||
- [x] 增加 LF / CRLF 等价测试。
|
||||
- [x] Windows 上运行 Node 契约检查。
|
||||
- [ ] Rust 可用后运行生成器检查与测试。
|
||||
- [x] Rust 生成器检查与测试。
|
||||
|
||||
## Task 2:本机工具链
|
||||
|
||||
@@ -23,14 +23,14 @@
|
||||
- [x] WebView2。
|
||||
- [x] pnpm 10.29.2。
|
||||
- [x] Rust 1.96.0、rustfmt、clippy。
|
||||
- [ ] Microsoft C++ Build Tools 与 Windows SDK。
|
||||
- [x] Microsoft C++ Build Tools 与 Windows SDK。
|
||||
- [x] 安装锁定的 JavaScript 依赖。
|
||||
|
||||
## Task 3:Wave 6 门禁
|
||||
|
||||
- [x] `pnpm verify:web`(25 份契约、29 项 Web 测试及生产构建通过)
|
||||
- [ ] `pnpm verify:rust`
|
||||
- [ ] `pnpm tauri build --no-bundle`
|
||||
- [x] `pnpm verify:rust` 等价门禁(171 项 Rust 测试与严格 Clippy 通过)
|
||||
- [x] `pnpm tauri build --no-bundle`
|
||||
|
||||
## Task 4-5:连续上下文与检查点
|
||||
|
||||
@@ -38,6 +38,9 @@
|
||||
- [x] 第三轮包含前两轮原始剧情。
|
||||
- [x] 兄弟分支上下文隔离。
|
||||
- [x] 稳定前缀与动态尾部固定编排。
|
||||
- [x] LAPP 模型预算与缺省来源贯通。
|
||||
- [x] 稳定前缀与叙事来源哈希。
|
||||
- [x] `Regenerate` 从父节点创建兄弟分支并复用原判定 / 状态。
|
||||
- [ ] 超预算检查点与来源哈希。
|
||||
- [ ] SQLite v3 迁移与 500 节点测试。
|
||||
|
||||
@@ -46,13 +49,13 @@
|
||||
- [ ] 风险预检不落节点。
|
||||
- [ ] 玩家确认后进入隐藏判定。
|
||||
- [ ] 失败后提供推骰入口。
|
||||
- [ ] 重新生成复用原判定。
|
||||
- [x] Runtime / Store 重新生成复用原判定。
|
||||
- [ ] 推骰创建新行动与新判定。
|
||||
- [ ] Vue / Tauri / Runtime / Store 测试全绿。
|
||||
|
||||
## Task 8:桌面冒烟
|
||||
|
||||
- [ ] Demo 窗口。
|
||||
- [x] 隔离 Demo 窗口启动并创建存档。
|
||||
- [ ] 重启恢复。
|
||||
- [ ] 终局与双线路隔离。
|
||||
- [ ] 真实 LAPP 连接。
|
||||
|
||||
Reference in New Issue
Block a user