Skip to content

docs(#169): add AGENTS.md numbered-list consistency rules - #177

Merged
JohnStrunk merged 1 commit into
mainfrom
agent/169-rule-list-consistency
Sep 23, 2026
Merged

JohnStrunk merged 1 commit into
mainfrom
agent/169-rule-list-consistency

Conversation

@fullsend-ai-coder

Copy link
Copy Markdown
Contributor

Summary

Add a self-consistency section to AGENTS.md so agents that add or modify a numbered rule first read the sibling rules in that same list and reuse established terminology.

Issues #58 and #86 already require sibling-read consistency for docs/ files and .agents/skills/ files. Neither instruction covers AGENTS.md's own numbered rule lists. That is how PR #168's first draft of specification-document rule 5 used "governed document" instead of the sibling term "specification document", forcing a fix-agent iteration and a second review pass.

The new section has three rules, matching the existing pattern:

  1. Read all sibling rules in that same list first.
  2. Reuse established terminology (an undeclared alias for a term already used in the same list is a defect).
  3. Review agents must check sibling-rule terminology so round-1 review can catch this class of drift as a targeted check.

The review check lives in this new section rather than in specification-document rule 4, whose scope is docs/ files. Putting AGENTS.md self-review into that rule would mix surfaces.

The section is placed before the specification-document hierarchy so it is visible when agents later add rules to either existing list.

CLAUDE.md is a symlink to AGENTS.md and inherits the change.

AGENTS.md is listed in REVIEW_PROTECTED_PATHS; extra review scrutiny is expected.

Testing

  • python scripts/lint.py --files AGENTS.md (offline pre-commit equivalent; pre-commit itself could not fetch hook repos in this sandbox — HTTP 403)
  • Direct secret scan of AGENTS.md and of staged content

Closes #169

Post-script verification

  • Branch is not main/master (agent/169-rule-list-consistency)
  • Secret scan passed (gitleaks — 2d365e268c2cde40810448b8e8deeb1e6942cf52..HEAD)
  • PR body secret scan passed (gitleaks — no-git)

Add a self-consistency section to AGENTS.md so agents that add or
modify a numbered rule first read the sibling rules in that same
list and reuse established terminology. Review agents must flag
terminology drift within a list, not only cross-document keyword
checks.

Issues #58 and #86 already require sibling-read consistency for
docs/ and .agents/skills/. Neither instruction covers AGENTS.md's
own rule lists, which is how PR #168's first draft of rule 5 used
"governed document" instead of the sibling term "specification
document".

The review check lives in this new section rather than in
specification-document rule 4, whose scope is docs/ files.

CLAUDE.md is a symlink to AGENTS.md and inherits the change.

Note: pre-commit could not fetch remote hook repositories
(HTTP 403). Equivalent hooks were run via python
scripts/lint.py --files AGENTS.md and passed.

Closes #169
@fullsend-ai-coder
fullsend-ai-coder Bot requested a review from a team September 23, 2026 16:37
@fullsend-ai-coder fullsend-ai-coder Bot added the ready-for-review Triggers review agent dispatch label Sep 23, 2026
@coderabbitai

coderabbitai Bot commented Sep 23, 2026

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Repository: redhat-et/ProtoBot/.coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 028bc848-2f80-487a-95fe-d2802fea4aa7

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Comment @coderabbitai help to get the list of available commands.

@fullsend-ai-review

Copy link
Copy Markdown

🤖 Review · ⚠️ Cancelled · Ended 4:39 PM UTC

Commit: fe54966 · View workflow run →

@JohnStrunk

Copy link
Copy Markdown
Member

/fs-review

@fullsend-ai-review

Copy link
Copy Markdown

🤖 Review · ⚠️ Cancelled · Ended 4:51 PM UTC

Commit: fe54966 · View workflow run →

@fullsend-ai-review fullsend-ai-review Bot added the risk/moderate PR risk: moderate label Sep 23, 2026
@fullsend-ai-review

Copy link
Copy Markdown

Risk Assessment: moderate (2/5)

Details

AGENTS.md is a low-risk, single-file, docs-only, bot-authored change with no protected/security/dependency signals in Tier 1 individually (aside from the protected-path hit itself), but the file shows heavy 30-day churn, frequent fix/revert commits, and multi-author contention in Tier 2, while the linked issue is fresh, unlabeled, well-scoped, and maintainer-authorized in Tier 3, combining to a moderate composite score of 2.

@fullsend-ai-review

Copy link
Copy Markdown

Review

Findings

Medium

  • [protected-path] AGENTS.md — This PR modifies AGENTS.md, which is listed in REVIEW_PROTECTED_PATHS (governance/infrastructure file). The PR links to issue AGENTS.md lacks a self-consistency instruction for its own numbered rule lists, causing terminology drift #169 and the description explains the rationale for the change (adding a self-consistency instruction for AGENTS.md's own numbered rule lists, mirroring the existing docs/ and .agents/skills/ sibling-read rules), so context for the change is sufficient. Human approval is always required for protected-path changes, regardless of context.

@fullsend-ai-review fullsend-ai-review Bot added the requires-manual-review Review requires human judgment label Sep 23, 2026
@fullsend-ai-review

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 4:52 PM UTC · Completed 5:02 PM UTC

Commit: fe54966 · View workflow run →

Runtime: pi · Model: sonnet → claude-sonnet-5 · Effort: high · Cost: $1.97

@JohnStrunk
JohnStrunk added this pull request to the merge queue Sep 23, 2026
Merged via the queue into main with commit fcd5575 Sep 23, 2026
53 of 55 checks passed
@JohnStrunk
JohnStrunk deleted the agent/169-rule-list-consistency branch September 23, 2026 17:11
@fullsend-ai-retro

Copy link
Copy Markdown

PR #177 (redhat-et/ProtoBot, merged) added a self-consistency section to AGENTS.md per issue #169. The pipeline itself ran cleanly: triage ($0.24) -> code (xai/grok-4.6, $2.35) -> review (claude-sonnet-5, $1.97) -> one human approval, no rework iterations. A dedicated check confirmed the code agent actually read the sibling rule lists before drafting (visible in its trace) and that the merged text reuses established terminology consistently with the two existing sibling sections -- no terminology drift, the class of bug issue #169 targeted did not recur. The review agent's single Medium finding (protected-path, human-approval-required) was correct and expected, and the human's uncommented approval reflects that there was nothing else to flag, not a rubber stamp.

Two things worth flagging. First, this PR's own GitHub Actions history reproduced a known, already-tracked platform bug: the bot-created PR fired both an 'opened' and a 'labeled(ready-for-review)' event ~1 second apart, both routed to stage=review, causing duplicate concurrent review dispatches (runs 35890091175 and 35890093229). This is the exact race tracked as fullsend-ai/fullsend#7384 (open, high priority, a recurrence of #391/#393/#2679/#5782), so no new issue is filed for it. This run adds a new, previously undocumented harm worth noting on that issue: the quickly-cancelled duplicate posted an early '⚠ Cancelled' comment ~2 minutes after PR open, which appears to have led the human maintainer to manually invoke /fs-review ~10 minutes later -- and that manual invocation cancelled the other, still-healthy automatic review run that had already been executing for ~12 minutes and would likely have completed on its own, wasting that compute and delaying the real review by several minutes.

Second, and more novel: this issue/PR is itself the third installment of a recurring pattern where a retro agent finds one more surface lacking a 'read sibling entries first, reuse established terminology, an undeclared alias is a defect' instruction and proposes adding a narrow copy of that same instruction for just that surface (#58 for docs/, #86 for .agents/skills/, #169/PR #177 for AGENTS.md's own rule lists). Each instance was well-evidenced and merged without complaint, but AGENTS.md now carries three near-duplicate copies of the same rule shape, and nothing has proposed generalizing it -- so the same cycle (a full retro -> issue -> code -> review -> merge loop, costing several dollars and 30-60 minutes each time) is set up to repeat on the next new list-like surface. A search of fullsend-ai/agents found no existing issue covering this; the closest, agents#1428, addresses a different failure mode (insufficient evidence causing proposal rejection) rather than consolidating already-accepted, structurally-repeated rules. Two proposals below address this at the process layer (agents repo) and the immediate cleanup (ProtoBot's AGENTS.md).

Proposals filed

@fullsend-ai-retro

Copy link
Copy Markdown

🤖 Finished Retro · ✅ Success · Started 5:12 PM UTC · Completed 5:21 PM UTC

Commit: fe54966 · View workflow run →

Runtime: claude · Model: sonnet → claude-sonnet-5 · Effort: high · Cost: $1.58

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready-for-review Triggers review agent dispatch requires-manual-review Review requires human judgment risk/moderate PR risk: moderate

Projects

None yet

Development

Successfully merging this pull request may close these issues.

AGENTS.md lacks a self-consistency instruction for its own numbered rule lists, causing terminology drift

1 participant