文件
hyb-oa/issues/2026-03-22_16-35-00-r26-portal-env-flag-hotfix.csv
T

8 行
3.1 KiB
CSV

ID,Title,Description,Acceptance,Test_Method,Tools,Dev_Status,Review1_Status,Regression_Status,Files,Dependencies,Notes
R26-0,执行合同建档与范围冻结,为部署环境变量热修复与防漏建立新合同 明确本轮不改业务模型 不做数据迁移,Issue CSV 校验通过 且范围锁定为 env 注入 契约校验 runtime smoke 与部署验收,python3 /home/shunli/.codex/skills/plan/scripts/validate_issues_csv.py issues/2026-03-22_16-35-00-r26-portal-env-flag-hotfix.csv,manual,DONE,DONE,DONE,issues/2026-03-22_16-35-00-r26-portal-env-flag-hotfix.csv,[],none
R26-1,compose env 注入机制改造,将 trialrun server worker init 从手写 environment 列表切换为 env_file 主机制 并仅保留必要覆盖项,server worker init 全部通过 env_file 注入 env 且 Portal 等关键开关在容器内非空,cd server && npm test && cd ../client && npm run typecheck,manual,DONE,DONE,DONE,deploy/trialrun/docker-compose.yml|deploy/trialrun/.env.example,"[""R26-0""]",统一采用无引号 env_file 安全格式
R26-2,env 契约校验脚本,新增静态契约校验脚本 比对 config.js .env.example 与 docker-compose 以阻止新增 env 漏接入,新增 env 键未同步到部署契约时脚本失败并输出缺失项,node deploy/trialrun/validate-env-contract.js,manual,DONE,DONE,DONE,deploy/trialrun/validate-env-contract.js|server/src/config.js|deploy/trialrun/.env.example|deploy/trialrun/docker-compose.yml,"[""R26-1""]",server worker init 仅允许白名单覆盖项
R26-3,部署后 runtime smoke,新增 trialrun runtime smoke 脚本 并在 deploy.sh 中接入 自动校验容器 env 功能开关求值与 Portal 前置条件,部署完成前自动执行 smoke 且关键 env 缺失或开关求值异常时直接失败,cd server && npm test && bash deploy/trialrun/deploy.sh,manual,DONE,DONE,DONE,server/src/scripts/smoke-trialrun-runtime.js|deploy/trialrun/deploy.sh,"[""R26-1"",""R26-2""]",smoke 不依赖人工点击页面
R26-4,前端功能开关错误提示优化,补齐 VALID_001 中 featureFlag 相关映射 让 Portal 等入口在开关关闭时显示明确提示,前端出现 featureFlag 类故障时显示业务化提示 而不是泛化参数校验失败,cd client && npm run typecheck && npm run build,manual,DONE,DONE,DONE,client/src/api/errorMessages.ts|client/src/lib/resolveErrorMessage.ts,"[""R26-0""]",覆盖 portal_home_v1_disabled 等 trialrun 高优先级开关
R26-5,回归 重部署与验收收口,完成修改后执行契约校验 本地检查 重部署与线上验证 并批量抽检同类开关能力,Portal 登录后可正常进入 且容器内关键 env 非空 契约校验 smoke server test client build 全部通过,cd server && npm test && cd ../client && npm run typecheck && npm run build && node deploy/trialrun/validate-env-contract.js && bash deploy/trialrun/deploy.sh,manual,DONE,DONE,DONE,deploy/trialrun|client|server|issues/2026-03-22_16-35-00-r26-portal-env-flag-hotfix.csv,"[""R26-1"",""R26-2"",""R26-3"",""R26-4""]",deploy.sh 已执行契约校验 + /ready + runtime smoke;额外确认 /api/portal/home 返回 200;server/scripts/regression-all.sh 在 trialrun 上仍依赖 dev seed 账号与 sample pdf,不作为本轮阻塞