From c52bf9abeeec7c6e4b9ac2d98fdc12291249bdec Mon Sep 17 00:00:00 2001 From: unanmed <1319491857@qq.com> Date: Fri, 9 Oct 2026 18:07:15 +0800 Subject: [PATCH] fix(09): anchor 09-04 Task 0 pre-state regex to local leftStatus declaration (exclude leftStatusBarUI export) --- .planning/phases/09-minimum-browser-runnable/09-04-PLAN.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.planning/phases/09-minimum-browser-runnable/09-04-PLAN.md b/.planning/phases/09-minimum-browser-runnable/09-04-PLAN.md index 29c0df8..626a91a 100644 --- a/.planning/phases/09-minimum-browser-runnable/09-04-PLAN.md +++ b/.planning/phases/09-minimum-browser-runnable/09-04-PLAN.md @@ -182,7 +182,7 @@ Phase 9 · 任务 1 · 第 4 个计划(**用户定向重设计版**)—— * 回复「可以执行」四个字(如需调整 `replay` / `hideStatus` / `floor` 处置请在回复中指明;修订意见请按 action ⑩ 处理) - node -e "const fs=require('fs');const t=fs.readFileSync('packages-user/client-modules/src/ui/main.tsx','utf8').replace(/\r\n/g,'\n');const s=fs.readFileSync('packages-user/client-modules/src/ui/statusBar.tsx','utf8').replace(/\r\n/g,'\n');const bad=[];if(!/const leftStatus/.test(t))bad.push('pre-state: leftStatus missing in main.tsx');if(!/status=\{leftStatus\}/.test(t))bad.push('pre-state: status={leftStatus} missing');if(!/\battributeHook\b/.test(t))bad.push('pre-state: attributeHook missing');if(/const leftStatus/.test(s))bad.push('post-state: leftStatus already in statusBar.tsx');if(!/p\.status/.test(s))bad.push('pre-state: p.status missing in statusBar.tsx');if(!/interface StatusBarProps0){console.error('PRESTATE FAILED :: '+bad.join(' ; '));process.exit(1)}console.log('OK pre-execution state intact (status still owned by main.tsx)')" + node -e "const fs=require('fs');const t=fs.readFileSync('packages-user/client-modules/src/ui/main.tsx','utf8').replace(/\r\n/g,'\n');const s=fs.readFileSync('packages-user/client-modules/src/ui/statusBar.tsx','utf8').replace(/\r\n/g,'\n');const bad=[];if(!/const leftStatus/.test(t))bad.push('pre-state: leftStatus missing in main.tsx');if(!/status=\{leftStatus\}/.test(t))bad.push('pre-state: status={leftStatus} missing');if(!/\battributeHook\b/.test(t))bad.push('pre-state: attributeHook missing');if(/const leftStatus\s*[:=]/.test(s))bad.push('post-state: leftStatus already in statusBar.tsx');if(!/p\.status/.test(s))bad.push('pre-state: p.status missing in statusBar.tsx');if(!/interface StatusBarProps0){console.error('PRESTATE FAILED :: '+bad.join(' ; '));process.exit(1)}console.log('OK pre-execution state intact (status still owned by main.tsx)')" non-zero exit, 或 stderr 含 "PRESTATE FAILED"(尚未汇报即已有迁移痕迹,或汇报基线不成立) 用户在对话中明确回复「可以执行」四个字(人工核对回复原文;用户若指定 `replay` / `hideStatus` / `floor` 的非默认处置,须在汇报与后续任务中据其指定执行)