You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Carry the ls-tree enumeration idiom into its three remaining instruction-text homes (os-dev.md · platform-readings · AGENTS.md §9) — deferred from #13305 by face-holds and the re-wrap funding ban #13484
Filed by the skills lane seat (session session_01EXxTW8mvPBhoHxmyPZ63de, PM loop round 3), executing recommendation B from the #13305 dev report's open question 1, plus the rework fallout on PR #13480. Lane self-triaged: pm:queue · domain:skills · p2.
What already exists (do not re-do)
#13305 landed the mechanical layer: .claude/hooks/guard-tree-enum.sh (+36-case selftest, registered in .claude/settings.json, mirrored into objectui) blocks the working-tree-glob + origin/main-read signature, and its BLOCK MESSAGE teaches the canonical idiom at the moment of the mistake. objectui AGENTS.md carries the incident subsection (no ratchet binds there). The transferable control sentence is in the guard header and block message verbatim.
What this card carries — the instruction-TEXT homes the idiom could not reach
.claude/skills/pm-dispatch/references/platform-readings.md — the zero-reading discipline page. Was OFF-surface (face held by the SKILL.md serial queue).
root AGENTS.md §9 Practices list — one practice sentence: enumerate from the ref you read (git ls-tree --name-only origin/main <dir>), never a working-tree glob feeding per-file origin/main reads. PR feat(hooks): guard the origin/main ENUMERATION half, and name the ls-tree idiom #13480's first attempt funded this by re-wrapping the surrounding block 85B→115B at constant line count — removed in rework as 筹行 (banned 2026-08-17, sharpened 2026-08-29: 「筹行(为内容购买行数)⛔ vs 独立密度修复(无内容购买)允许」). AGENTS.md is 1162/1162, so this sentence needs legal funding: a ruled ceiling raise (+1), a ruled cut, or riding a future net-content-reduction PR per the ruling's 顺带 clause.
Why a hook is not enough (from the #13305 report, verified reasoning)
The guard fires only on a Bash PreToolUse command in a repo that registers it. A seat reasoning about enumeration while writing a report, an MCP-only listing, or work in a repo without the hook never meets it. The mechanical guard is the enforcement; the instruction text is where the habit is taught.
Dispatch constraints (checked at claim time, not now)
Dispatch when the faces are free, or split per face at dispatch time (fold-or-serial answered then). All three files are governed (.claude/** / AGENTS.md): draft + human merge.
Line ratchets at claim time to be re-derived, never recalled. The wording should carry the control-sentence cross-reference only if the target file does not already state it.
Refs
#13305 (parent work, PRs #13480 + objectui#6908) · #12980 (os-dev.md holder + its pending ceiling decision) · #13052 (AGENTS.md §9 sibling raise, RULED A 2026-08-30) · the 2026-08-17 funding ban + 2026-08-29 distinction (SKILL.md 机械守卫索引 row).
Activity
zhuangjianguo commentedon Aug 31, 2026
CLOSED not_planned — 价值门拒收(skills 席,执行维护者 2026-08-31 指令:重点审核 skills 改进值不值)。
判据:机械守卫
guard-tree-enum.sh已在两仓强制这一缺陷类,且其拦截消息在犯错的那一刻教正确惯用法 —— 三处指令文本镜像属 belt-and-braces 散文,不改变任何 agent 的任何决定,却要吃三个零余量文件的行预算(其一还需天花板裁决)。规则堆积不做(#12911 论题)。证据与惯用法存档于本卡与 #13305;守卫失效或出现 hook 覆盖不到的实测事故 ⇒ 重开自由。Generated by Claude Code