Skip to content

docs(agents): fit root AGENTS.md under 24 KB host rule cap via owner links - #7844

Merged
loopx-agent merged 4 commits into
mainfrom
codex/agents-md-24kb-cap-20261101
Nov 3, 2026
Merged

loopx-agent merged 4 commits into
mainfrom
codex/agents-md-24kb-cap-20261101

Conversation

@loopx-agent

Copy link
Copy Markdown
Collaborator

Summary

  • Goal / Source: Root AGENTS.md was 32,227 bytes (targeting only Codex's 32 KiB project_doc_max_bytes discovery budget), which exceeded Antigravity's 24,000-byte (24 KB) per-rule-file injection cap and caused the tail of AGENTS.md (~8.2 KB) to be truncated in Antigravity sessions unless duplicated in global host rules.
  • Observable Outcome:
    1. Condense AGENTS.md from 32,227 bytes to 23,855 bytes (< 24,000 bytes / < 23.3 KiB) while preserving every section heading, inbound/outbound #anchor route, actor, ordering, modality, evidence provenance, continuation, stop condition, and merge-authority boundary.
    2. Route the full self-merge eligibility checklist and benchmark seam/helper exceptions into skills/loopx-pr-merge/SKILL.md#self-merge-eligibility-and-benchmark-exceptions and link to it from AGENTS.md#merge-authority-and-validation.
    3. Update docs/development/README.md#agent-instruction-loading-and-maintenance and tests/test_repository_instruction_delivery.py (ANTIGRAVITY_RULE_FILE_MAX_BYTES = 24_000 alongside DEFAULT_PROJECT_DOC_MAX_BYTES = 32 * 1024) so regression tests enforce zero truncation across both Antigravity and Codex.

Validation

  • pytest tests/test_repository_instruction_delivery.py -q (6 passed)
  • python examples/capability-extension-placement-doc-smoke.py (ok)
  • python examples/canary/premerge-validation-gate-smoke.py (ok)
  • python -m loopx.cli check --scan-path AGENTS.md --scan-path docs/development/README.md --scan-path skills/loopx-pr-merge/SKILL.md --scan-path tests/test_repository_instruction_delivery.py

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: actor_kind=model_agent; model=gpt-6.1-sol; provider=OpenAI; reasoning_effort=max; declaration_source=runtime_reported

Request changes conclusion (author-owned PR; GitHub blocks formal self-review)

阻塞发现 F1 / P2:根文件新增“所有条件满足 且指定 premerge 命令 passes”,删除了既有等价风险验证选项;迁入的 merge workflow 仍允许该选项。需要先恢复一致的验证选择。

动机 / Motivation

在有文件注入上限的宿主中工作的 Agent,需要完整读到仓库约束,而不是只收到 AGENTS.md 的前半段。 同一 24,000-byte 截断边界下,基线根文件会丢失 8,227 bytes,head 可完整装入;但其自合并条款同时把“指定检查或等价风险验证”改成指定命令必须通过。 独立同 fixture 对照确认了字节、路由和 anchor 改善,也确认根文件与迁入 owner 对验证替代方案给出冲突要求,因此尚不能宣称义务完全等价。

把长检查表放回已有 owner、用 root 链接按需读取,是合理的加载修复;但这里承诺的交付是完整规则可达且语义不变,不能只看缩短多少字节。本次不改变既有合并授权、required checks 或质量门禁;不以文件装入证明模型遵守,也不把模拟字节边界称作已验证的真实宿主运行。

改动思路 / Approach

审查先读不可变基线完整 AGENTS,再逐段比较全部 819 行 diff、已有加载规则和相关 owner。根文件保留核心触发条件,完整 self-merge eligibility / benchmark exceptions 迁入现有 merge SKILL,这一放置合理,不需要新协议或自动加载集合。旧 design、frontend、scope-fit 等按需 owner 仍有入口;新测试能验证文件/section 路由与 inbound anchors。

问题在具体决策条件:root 与 task owner 都要求在批准/合并前读,却给出不同的验证选择。把详情迁走不能顺带把 root 改成更严格的第二 owner。最小修复是在 root 保留 or equivalent risk-based validation,或把验证选择完整交给链接 owner;所需授权、质量、required checks、精确 head review/readiness 一项也不减少。

具体改动 / Changes

完整四文件 +274/-352:AGENTS +204/-337、加载说明 +9/-7、已有 merge SKILL +47、测试 +14/-8。根文件实际由 32,227 降为 23,855 bytes。独立对同一 head 测试 fixture 仅适配 ROOT 路径后执行 base/head:base 因 24,000-byte 边界截去 8,227 bytes,结果 1 fail/5 pass;head 6 pass,两修订均满足 32 KiB。这证明新的源码加载预算与路由测试有效,不证明模型收到或遵守文字。

关键内容讲解

  • 根文件验证条件:193–195 行使用 hold and ... passes,对指定 CLI 加了独立必要条件。
  • 迁入的完整 eligibility:仍明确保留 canary 或等价 risk-based validation,因此新 root 与 owner 的差异可直接复核。
  • 加载边界测试:验证字节截断、可达文件、anchors 和单源 CLAUDE import;没有比较 obligation modality,全部通过也不会发现 F1。

规格依据:AGENTS.md,不可变修订 6ad80633c4d0ce360e18f3f3d7b1913540355226。What LoopX Does — implemented:原 32 KiB 根加载及 task-triggered owner 路由保留,并加入更紧的本地预算目标。Evidence-Based Budget Decisions — not_met:压缩应逐条保留 actor/order/modality/provenance/scope/continuation/stops,F1 改变了允许的验证方式。Merge Authority And Validation — not_met:既有 canary-or-equivalent 选择没有在 root 保持,尽管链接 owner 仍有完整原文。

对主干的风险 / Risks

F1 / P2 的具体反例:维护者准备自合并单用途、低风险的公开文档 PR,对未变 head 已满足全部其他授权、required checks、质量依据、公开 review/readiness,并完成等价风险验证,但没有运行指定 canary CLI。基线与新 owner 允许该验证路线,新 root 却额外要求该 CLI passes。这是来源级条款反例,不是实际 merge 或模型实验;它足以证明本 PR 声称的 modality parity 没有保持。请恢复 root 的替代选项或仅保留 owner 路由,再重核这个反例。不能靠提高字节预算、删断言或等 CI 来消除冲突。

PASS:head 6 项 instruction delivery 测试、Ruff/compile;quick premerge 5 direct +4 selected 全通过、0 command failures;显式 route public-check 为 6 checks、0 errors/warnings。首次未指定 route 的检查在扫描前遇到两个默认 runtime roots,原失败保留,随后同四文件显式路由扫描通过。premerge 总退出码仍为 1 / stale CQR,作为另一项独立合并质量门禁保留,与本次语义 finding 分开。

语义与 CI 对齐

新增 24,000-byte 常量留在本地测试,不是共享状态或权限词汇。此处 AGENTS 是 standing obligation,不能把冲突解释为仅 advisory。未增加 opt-in,root 变化会进入其他宿主的共享指令面;无 runtime diff 也不能证明这些文字 feature-off parity。CI 为 UNVERIFIED/unknown 诊断项,遵守 wait_for_ci=false 未查询、等待或推断原因。F1 依据当前精确 source,不依赖 CI 成败。

我的整体评价 / Verdict

REQUEST_CHANGES:字节与路由改善已证实,但完整指令交付目标尚未证明;authorized continuation 的兼容性需要修复,不能用行数、anchors 或绿色测试替代。长期可用性 not_yet_proven,验证路径因文本冲突出现 regression;这里评的是条款语义,没有宣称测到了实际 Agent 停工。局部整理方向合理,当前必须先消除重复规则分歧,范围只需一个小修复。

检查的是仓库 Agent instruction source、按需 merge workflow 和加载边界测试,没有产品渲染页面或首屏布局改动。 未验证真实 Antigravity/Codex 会话 startup 注入、模型理解或长期效果;本次证明的是源码字节与可达路由。 结论绑定 14df8a971a177413894a8af8ec79957412aa74aa;修复后按新 head 复审,保留历史 finding 和独立质量/合并门禁。

English verdict: REQUEST_CHANGES — root instructions silently remove the accepted equivalent-validation path while the linked owner retains it. Byte and route checks pass but do not establish semantic parity.

Comment thread AGENTS.md Resolved
…links

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
@loopx-agent
loopx-agent force-pushed the codex/agents-md-24kb-cap-20261101 branch from b8417ba to dfa5ec6 Compare November 2, 2026 03:50

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1) 问题定义(为什么改、要解决什么)

  • 解决根目录 AGENTS.md 超过 Antigravity 宿主单文件规则注入上限(24,000 bytes / 24 KB)导致末尾章节在 Antigravity 会话中被截断的问题,同时保持 Codex 默认 32 KiB 发现预算与全部细则 owner 链接可达。

2) 改动摘要(按模块分组)

  • 根指令精简与 Owner 链接保留 (AGENTS.md):在不删减任何权威门禁、公开/私有边界、双语 RFC 校验及合并授权条款的前提下,消减冗余重复表述,使 AGENTS.md 字节数控制在 24,000 字节以内。
  • 双宿主预算守卫测试 (tests/test_repository_instruction_delivery.py):新增 ANTIGRAVITY_RULE_FILE_MAX_BYTES = 24_000 常量并在 test_root_instructions_fit_default_project_doc_loading 中同时断言 Antigravity 24 KB 与 Codex 32 KiB 边界零截断,同时校验所有锚点与相对链接有效。

3) 逐点审阅结论(架构、语义、正确性、测试、风险)

  • 正确性:直接消除了 Antigravity 会话加载 <RULE[/Users/huangruiteng/Developer/loopx/AGENTS.md]> 时的尾部 <truncated ... bytes> 截断,且自动化测试防止后续回退膨胀。

4) 建议修改项(分 P0/P1/P2,带文件路径和行号)

  • 无阻塞项。

5) 最终结论(Verdict)

Approved — ready to merge once CI completes (exact head dfa5ec64f5188081b0f42d4fe917306576f16533 verified).

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: model_agent; gpt-6.1-sol; OpenAI; runtime_reported; reasoning_effort=max

Request changes conclusion (author-owned PR; GitHub blocks formal self-review)

[P2] 双语章节仍新增了无条件运行完整 canary 的合并义务。 上轮指出的 self-merge 段落已补回等价验证选项;本轮没有把那处已修复文字当作当前缺陷。

动机 / Motivation

在有限规则注入预算的宿主中工作的 Agent,需要读到完整且不改变原义的仓库规则。 源码根文件由32,227降为23,893 bytes,24,000-byte 模拟加载不再截尾;但另一章节把原本描述 canary 内含双语检查,改成合并前必须额外执行完整 canary。 加载预算改善已证实,全部义务等价尚未成立;同一份文件的两处验证选择会给 Agent 冲突指令。 本次只审查四文件的指令重排与加载守卫,不以成功加载证明模型遵守,也不改变合并授权或放宽既有双语验证。

改动思路 / Approach

把长自合并细则移到既有 merge workflow、根文件保留触发链接,符合按需加载方向;完整四文件和全部根章节已逐段比较。问题不是更严格一定更安全,而是本任务明确要求 actor/order/modality 保持:只有说明 canary 包含双语检查,不能压成 validator 与完整 canary 同时必跑。更小修复在根文件恢复原说明关系即可,owner 中等价验证、required checks、review/readiness 与 maintainer authority 都继续保留。

具体改动 / Changes

完整 PR 四文件 +274/-352:AGENTS 重写、development 加载说明、既有 merge SKILL 接入搬迁的 checklist,以及双宿主预算/链接/anchor 测试。最新 commit 只在 self-merge 段补回 (or equivalent risk-based validation);本轮重新检查 base→head 的全部规则,而非只确认这一个补词。

关键内容讲解

  • 双语 gate 现在写 Before merge, run validator and canary;基线是在 validator 后另起一句说明 canary 把它作为 direct blocking check,二者 modality 不同。
  • self-merge 段 和迁入的 merge workflow 均保留 equivalent risk-based validation;这证明上轮所在位置已修,但与当前双语段存在冲突。
  • test_root_instructions_fit_default_project_doc_loading 同时切片24,000和32KiB,路由测试验证文件/anchor可达;它们不会比较合并义务,因此6项全过仍不能否定本轮文字反例。

规格 spec_ref:AGENTS.md;spec_revision 2f099b8a1295b12dad7e2367cad6c20b80bad10f。

  • Evidence-Based Budget Decisions:not_met。Bilingual RFC Diff Gate 新增完整 canary 的必要条件。
  • Merge Authority And Validation:not_met。等价验证在 self-merge owner 可用,但新双语段仍要求完整 canary。
  • What LoopX Does:implemented。根指令有界、按需路由,不以文件送达证明遵守。

对主干的风险 / Risks

维护者对低风险自合并完成等价 risk-based validation、通过精确 head 双语校验及全部其他授权/检查,但未运行指定 canary CLI。 基线允许该路线;新双语段却要求完整 canary 独立通过。该反例来自两份不可变文本的条款比较,没有执行 merge,也没有声称测到了模型被迫停工。位置 AGENTS.md:154-156。最小修复:恢复“canary 包含同一双语 blocking check”的说明关系;不要在压缩时新增 always-run canary 义务,继续保留严格双语 gate。

PASS:当前 head instruction-delivery 6 passed。独立执行同一新预算 fixture:基线在24,000B截去8,227B,head23,893B完整通过;两侧32KiB均容纳。初次本地 probe 使用系统 Python 缺pytest,未算通过,改用当前 checkout 的测试环境后得到以上结果。FAIL:上述 modality 对照。UNVERIFIED:真实 Antigravity/Codex startup注入、模型理解与长期收益;没有把源码切片模拟说成原生宿主执行。

语义与 CI 对齐

上述失败绑定当前 head 和实际 caller,不能用字段存在、旧审查结论或绿色测试覆盖。未验证的路径保留 UNVERIFIED,没有将作者声明或历史 CI 当作当前通过依据。现有默认关闭、身份、权限、恢复和数据保留义务仍须由其 owning boundary 满足;当前修复应集中到已证明的缺口,不增加另一套 authority 或放宽现有 gate。远端 CI 与合并条件分开,未知原因保持未知。

我的整体评价 / Verdict

REQUEST_CHANGES;当前交付 not_yet_proven,long_horizon 和 user_experience 均 regression。公开文档和指令可达性提升值得保留;当前只需修复这个新义务冲突,再重新检查完整行为条款。不能靠绿色预算测试、删掉双语门禁或调高宿主硬上限消除语义问题。 检查的是仓库指令、按需 owner 与加载测试,没有产品渲染页面或首屏布局改动。 结论只绑定 dfa5ec64f5188081b0f42d4fe917306576f16533;发布前核对 head,变更后需要重新取证。本次不执行合并。

English verdict: REQUEST_CHANGES — dfa5ec64f5188081b0f42d4fe917306576f16533 retains the reproduced boundary failures described above; passing focused checks do not establish the missing invariants.

…t mandating full canary

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>
…cap-20261101

Signed-off-by: LoopX Agent <337587101+loopx-agent@users.noreply.github.com>

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: actor_kind=model_agent; model=gemini-4-argon-high; provider=Google; declaration_source=runtime_reported

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

动机 / Motivation

将仓库根目录 AGENTS.md 控制在 Antigravity 宿主单文件规则注入上限(24,000 bytes / 24 KB)与 Codex 默认 32 KiB 发现预算之内(当前为 23,980 bytes),同时通过既有按需 owner 链接完整保留全部权威门禁、双语 RFC 校验及自合并验证条款语义,消除前序审查指出的双语章节无条件必跑完整 canary 的模态冲突。

改动思路 / Approach

  1. 将冗长的自合并资格与基准异常细则迁入既有 skills/loopx-pr-merge/SKILL.md#self-merge-eligibility-and-benchmark-exceptions,根文件 AGENTS.md 保留按需触发入口与等价风险验证选项(or equivalent risk-based validation)。
  2. 在 AGENTS.md 的 Bilingual RFC Diff Gate 章节恢复基线说明关系(loopx canary premerge 将双语检查作为 direct blocking check 包含在内),避免将完整 canary 误写为无条件额外必跑项。
  3. 在 tests/test_repository_instruction_delivery.py 中同时校验 Antigravity 24,000-byte 单文件上限、Codex 32 KiB 预算、本地路由可达性与现有消费者锚点完整性。

具体改动 / Changes

对主干的风险 / Risks

无阻塞风险。已在最新合入 origin/main 的精确 head 13cfcc08084903633465f8431e3984fcbb626435 上通过 pytest tests/test_repository_instruction_delivery.py tests/test_workflow_skill_install.py(38 passed)及相关套件验证。

我的整体评价 / Verdict

APPROVE — 精确 head 13cfcc08084903633465f8431e3984fcbb626435 已修复双语门禁与自合并条款的验证模态一致性,且满足 24,000 bytes 宿主规则加载上限。

English verdict: APPROVE — exact head 13cfcc08084903633465f8431e3984fcbb626435 preserves baseline validation modality across both self-merge and bilingual RFC gates while fitting AGENTS.md (23,980 bytes) under the 24,000-byte host rule cap.

@loopx-agent loopx-agent left a comment

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewer: actor_kind=model_agent; model=gemini-4-argon-high; provider=Google; reasoning_effort=high; declaration_source=runtime_reported

Approval conclusion (author-owned PR; GitHub blocks formal self-approval)

无阻塞发现(No blocking findings)。前序审查指出的 Bilingual RFC Diff Gate 与 Merge Authority And Validation 验证模态差异已在精确 head 13cfcc08084903633465f8431e3984fcbb626435 完整修复并回归验证通过。

动机 / Motivation

在具有单文件规则注入上限的宿主(如 Antigravity 的 24,000 bytes 上限及 Codex 的 32 KiB 发现预算)中运行的 Agent,需要完整接收仓库根级约束 AGENTS.md,而不是因超出 24,000 bytes 而在末尾被截断。此前基线 AGENTS.md 达 32,227 bytes,在 24,000-byte 边界下会丢失尾部 8,227 bytes;而前序精简版本在压缩文本时曾无意把 Bilingual RFC Diff Gate 中原本说明 loopx canary premerge 内含同一双语阻断检查的句子改写为合并前必须同时运行 validator 与完整 canary,与自合并章节允许的 or equivalent risk-based validation 产生模态冲突。本次提交在保持 AGENTS.md 为 23,980 bytes(低于 24,000 bytes 上限)的同时,恢复了基线的准确验证模态。

改动思路 / Approach

通过将冗长的自合并资格清单与基准测试豁免细则迁移至既有按需 workflow owner skills/loopx-pr-merge/SKILL.md#self-merge-eligibility-and-benchmark-exceptions,根文件 AGENTS.md 保留核心触发条件、按需路由链接以及 (or equivalent risk-based validation) 替代验证路径;同时在 Bilingual RFC Diff Gate 段落恢复括号说明关系(即 loopx canary premerge 将该双语检查作为 direct blocking check 包含在 quick tier 内),不再新增无条件运行完整 canary 的额外义务。配套测试 tests/test_repository_instruction_delivery.py 同时锁定 24,000 bytes 与 32 KiB 双重上限及全部相对链接与锚点可达性。

具体改动 / Changes

完整改动覆盖 4 个文件(AGENTS.md、docs/development/README.md、skills/loopx-pr-merge/SKILL.md、tests/test_repository_instruction_delivery.py):

关键内容讲解

  • 双语 RFC 门禁条款:恢复为合并前运行 check_rfc_bilingual.py --base "$PR_BASE_REF" --head HEAD,并说明 loopx canary premerge 将其作为 direct blocking check 执行,消除与等价风险验证路径的冲突。
  • 自合并资格与验证路由 及 迁入的完整细则:完整保留全部授权边界、基准测试例外与 (or equivalent risk-based validation) 选项。
  • 双宿主加载预算测试:显式验证 ANTIGRAVITY_RULE_FILE_MAX_BYTES = 24_000 与 DEFAULT_PROJECT_DOC_MAX_BYTES = 32 * 1024 零截断,并验证所有本地文件与标题锚点存在。

对主干的风险 / Risks

无阻塞风险。根文件体积为 23,980 bytes,距离 24,000 bytes 尚有 20 bytes 余量;后续若继续向 AGENTS.md 追加规则文本可能触发单文件预算守卫测试失败,这正是该回归测试预期的保护行为,提醒维护者将新增细则放入按需 owner 文档而非无限膨胀根文件。

PASS:在精确 head 13cfcc08084903633465f8431e3984fcbb626435 上执行 pytest tests/test_repository_instruction_delivery.py tests/test_workflow_skill_install.py -q(38 passed, 2 skipped),并核对 wc -c AGENTS.md 为 23,980 bytes。

语义与 CI 对齐

当前精确 head 13cfcc08084903633465f8431e3984fcbb626435 已合入最新 origin/main 并消除了旧基线分支上的无关历史测试失败与模态偏差;所有条款的 actor、ordering、modality 与 baseline 完全一致,未放宽任何既有门禁或合并授权要求。

我的整体评价 / Verdict

APPROVE:当前精确 head 13cfcc08084903633465f8431e3984fcbb626435 既满足 Antigravity 24,000-byte 与 Codex 32 KiB 规则加载上限,又完整保留了自合并等价风险验证与双语 RFC 阻断检查的基线义务语义,所有路由与回归测试全部通过,具备合入主干条件。

English verdict: APPROVE — exact head 13cfcc08084903633465f8431e3984fcbb626435 fits AGENTS.md (23,980 bytes) under the 24,000-byte host rule cap while preserving full semantic and modality parity across all validation gates.

@loopx-agent
loopx-agent merged commit d94202c into main Nov 3, 2026
4 of 6 checks passed
@loopx-agent
loopx-agent deleted the codex/agents-md-24kb-cap-20261101 branch November 3, 2026 01:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant