Repository navigation
test(release): align thin-prompt assertions and RFC ledger counts - #7811
Conversation
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
loopx-agent
left a comment
There was a problem hiding this comment.
Approval conclusion (author-owned PR; GitHub blocks formal self-approval)
Reviewer: actor_kind=model_agent; model=gpt-6.1-sol; provider=OpenAI; runtime_reported; reasoning_effort=max
归属来自最近的宿主记录;bounded read 未验证当前执行活性,声明不认证模型权重或赋予权限。
动机 / Motivation
发布维护者依赖现有 heartbeat 与文档检查,判断候选是否保留已交付合同。 旧检查在两个薄提示中要求已移除的 re-enter guard 片段,同时 RFC 索引把已有三条 ledger 记成两条,因此完整公共检查在这两处失败。 检查改为验证实际薄提示当前的完整接续指令,双语索引从同一生成器恢复正确计数;两个原始完整检查在精确 head 均通过。 本 PR 不修改产品提示、调度和权限规则,不调整预算,不新增 smoke,也不声称整个版本已经发布。 发布仍等待用户指定的 Benchmark SHA256 优化合入,并在最终固定源码上完成原有整版验收和渠道读回。
改动思路 / Approach
产品规则和生成数据的权威来源都已存在,因此修复放在原测试及原生成索引。薄提示的真实路径使用 HOST_LOOP_QUOTA_DISPATCH_RULE,其中要求按当前指令接续并实际执行、验证授权工作;本 PR 检查这个完整子句,没有把 captured-envelope 另一条指令套到该路径,也没有倒改产品去迁就旧断言。RFC 计数由现有 generator 读取同一 ledger,英文和中文一起生成,避免增加手工同步字段。
最强反对意见是测试变更可能把失败刷绿而放松合同。这里逐项核对了原派发 owner、两个不同薄提示夹具、完整断言列表及原基线失败;保留所有其他合同断言、预算和负例,只替换两个已经过期的字符串。两个 smoke 均完整运行,不是摘出几个成功断言。
具体改动 / Changes
关键内容讲解
heartbeat-prompt-smoke.py,第 601 行及第 704 行:分别检查带 Agent 配置的真实薄提示和普通薄提示,均要求re-enter as instructed, do/verify authorized work.。实际生产规则在同版本loopx/control_plane/heartbeat/rules.py第 107–110 行,原选择、授权执行、验证和结算合同不变。STATUS.md第 57 行 与中文镜像:只把 overall roadmap 的 ledger 数量从二修正为三。来源为三对现有 ledger 文件,使用原scripts/generate_rfc_status_index.py --write,没有编辑 RFC 状态或交付结论。
规范为 docs/development/good-smokes.md,spec_revision: 6b2d56089ad52abdc103328437609bc749b9b49d,并核对现有 RFC README 与生成文件头声明。
SMOKE-1:implemented。保留已交付合同与独立语义期望,不冻结旧片段,不新增重复 smoke;两处断言仍要求接续以及执行、验证授权工作。SMOKE-2:implemented。完整重跑既有入口并保留原失败:同一隔离环境,base 两项失败、head 两项通过,源码未变且自有运行时清理完成。INDEX-1:implemented。索引仍从同一 owner 派生,双语同步,原全量文档治理检查及 generator check 均通过。
对主干的风险 / Risks
最强风险是新断言缺少原本应保护的接续义务,或索引手工计数掩盖源数据错误。实际薄提示 owner 与完整断言列表已核对,字段及其他条款没有删除;两个原夹具承担不同配置路径,保留在现有脚本中。文档检查不仅比较这两个文件,还检查全目录 RFC 头、ledger 和生成索引。总差异 +4/-4,无新生成器、规则、模块或兼容分支。
PASS:匹配 base/head 的完整 heartbeat 与 docs-governance smokes;generator check、Python compile、双语差异、三文件公开扫描、差异与标准 Goal premerge;精确范围 CQR 有效。初次未公开诊断把 captured-envelope 的句子用于另一薄提示,原完整检查立即拒绝,保留该失败后按真实选中 renderer 修正。未查询、轮询或等待 PR CI。当前证明是合同检查恢复,不是模型理解、费用或整版验收收益。
我的整体评价 / Verdict
problem_context: justified_increment;long_horizon preserved,user_experience preserved。产品路径、权限、停止和结算完全未改,维护者获得当前合同可用的检查,没有给用户增加设置或确认。完整差异只有两处测试字符串和双语索引的一格计数,表格布局、Accepted 与交付资格的区分均保留;没有产品界面或交互变化。
本 PR 不增加大 smoke 的体积,只保留两个既有、配置不同的用例并修正四行。约 1,600 行的原脚本有 full/compact/brief/thin、宿主、作用域及失败合同覆盖,不能为此次修复随意删除。和本批焦点、CLI 适配修复相比,它对应另一处真实公共门阻塞,没有同形重复交付或贡献限制警告。可独立回退;发布仍等待用户指定的 Benchmark SHA256 优化合入,并在最终固定源码上完成原有整版验收和渠道读回。
English verdict: APPROVE — Head 26a8879 restores the two existing full checks against their current owners without changing product behavior or budgets; release qualification remains separate.
Two existing public checks fail on the release branch without a product defect in their changed scope:
heartbeat-prompt-smoke.pystill searches for the oldre-enter guardfragment in two non-captured thin prompts. The actual existing dispatch rule saysre-enter as instructed, do/verify authorized work.Both assertions now check that complete current clause; all other assertions remain.There are four line replacements across three files. No product prompt, runtime rule, budget, public/private boundary or execution policy changes.
Validation at
26a8879733ed25b8cf10eef2648c0c92a14165a2uses the same original complete heartbeat and documentation-governance smokes at immutable base6b2d56089ad52abdc103328437609bc749b9b49dand head, in their original isolated runtime environment. Both fail at base and pass at head; source is unchanged and owned cleanup completes. The generator check, Python compile, bilingual diff, public scan (three files) and whitespace checks pass. Exact-scope change-quality receipt:cqr_259e04beb0af4a994469.An initial unpublished assertion used the captured-envelope renderer's longer sentence for the non-captured thin renderer and failed the unchanged smoke; that diagnostic is retained. The final assertions follow the actual selected thin renderer and its current dispatch owner. Qualified comparisons use the same isolated fixture environment.
Standard Goal premerge passes with no failed check or manual hold. This validation-only cleanup qualifies its changed checks; the final complete release cut still awaits the requested SHA256 optimization and the original full release gates. No PR CI is queried or waited on. The indices change one generated count, with no rendered layout or primary product interaction change.