Filed by the skills seat (session session_01DAcomhvR9kKizeYgg89Vo8) as a bare card in this round's filing batch: ⛔ not routed, not graded — triage grades (objectstack#17942 ruling ③, comment 5652544529: grading, routing and dedupe are the triage seat's; the filer attaches keywords). Derived from objectstack#18068 (PR objectstack#18072, the write-identity locks 1–4, awaiting an authorized approval) and objectstack#18019 (PR objectstack#18051, the ruling-C wording), both ordered by the maintainer on 2026-09-13 (「机制层的五道锁 现在就派发处理」; ruling C 「C. approve 后不管后续改动都由席位落地:」 on objectstack#17971).
Dedupe keywords: settings.json, permissions.deny, MCP write tools, claude[bot], AGENTS.md §9, ruling C.
What
objectstack is landing two rules this repository's copies do not yet carry:
- Write identity —
.claude/settings.json gains a permissions.deny list naming the 14 content-writing MCP GitHub tools (mcp__github__issue_write, create_pull_request, add_issue_comment, add_comment_to_pending_review, add_reply_to_pull_request_comment, pull_request_review_write, push_files, create_or_update_file, delete_file, create_branch, sub_issue_write, merge_pull_request, create_repository, fork_repository), so every seat and dev write goes through the REST proxy and is authored claude[bot] (measured on 2026-09-13: MCP writes are authored by the claude.ai account's linked GitHub user, and a suspended user account hides everything it authored — os-musk's cards, 404 today). State-shaped tools (update_pull_request, enable_pr_auto_merge, actions_run_trigger, resolve_review_thread) stay allowed. objectui's .claude/settings.json has no such list.
- AGENTS.md §9 (the governed-surface paragraph) still reads draft-until-a-human-merges; under ruling C a governed hit stays draft until an authorized approval (os-zhuang / hotlong, not dismissed) exists and the owning seat then lands it — ready, auto-merge — and never approves. objectstack's copy of that wording lands in PR objectstack#18051 (
lanes/ui.md :25); the objectui paragraph is the seam half this seat could not fix from objectstack.
Shape
Two commits: (1) the deny list, byte-for-byte the objectstack list once PR objectstack#18072 lands (read it from origin/main there, do not retype); (2) the §9 paragraph, one equal-line replacement stating ruling C in the same words as objectstack's lanes/ui.md :25. AGENTS.md is governed here too (draft, four-piece). Blocked-by: objectstack#18072 for the list's final spelling; the §9 line can go first if the seat splits it.
Generated by Claude Code
Filed by the skills seat (session
session_01DAcomhvR9kKizeYgg89Vo8) as a bare card in this round's filing batch: ⛔ not routed, not graded — triage grades (objectstack#17942 ruling ③, comment 5652544529: grading, routing and dedupe are the triage seat's; the filer attaches keywords). Derived from objectstack#18068 (PR objectstack#18072, the write-identity locks 1–4, awaiting an authorized approval) and objectstack#18019 (PR objectstack#18051, the ruling-C wording), both ordered by the maintainer on 2026-09-13 (「机制层的五道锁 现在就派发处理」; ruling C 「C. approve 后不管后续改动都由席位落地:」 on objectstack#17971).Dedupe keywords:
settings.json,permissions.deny,MCP write tools,claude[bot],AGENTS.md §9,ruling C.What
objectstack is landing two rules this repository's copies do not yet carry:
.claude/settings.jsongains apermissions.denylist naming the 14 content-writing MCP GitHub tools (mcp__github__issue_write,create_pull_request,add_issue_comment,add_comment_to_pending_review,add_reply_to_pull_request_comment,pull_request_review_write,push_files,create_or_update_file,delete_file,create_branch,sub_issue_write,merge_pull_request,create_repository,fork_repository), so every seat and dev write goes through the REST proxy and is authoredclaude[bot](measured on 2026-09-13: MCP writes are authored by the claude.ai account's linked GitHub user, and a suspended user account hides everything it authored — os-musk's cards, 404 today). State-shaped tools (update_pull_request,enable_pr_auto_merge,actions_run_trigger,resolve_review_thread) stay allowed. objectui's.claude/settings.jsonhas no such list.lanes/ui.md:25); the objectui paragraph is the seam half this seat could not fix from objectstack.Shape
Two commits: (1) the deny list, byte-for-byte the objectstack list once PR objectstack#18072 lands (read it from
origin/mainthere, do not retype); (2) the §9 paragraph, one equal-line replacement stating ruling C in the same words as objectstack'slanes/ui.md:25.AGENTS.mdis governed here too (draft, four-piece). Blocked-by: objectstack#18072 for the list's final spelling; the §9 line can go first if the seat splits it.Generated by Claude Code