Skip to content

Pre-existing defects in AGENTS.md Context and Delegation Discipline, several measured #1627

Description

@ptr727

Six whole-unit passes over AGENTS.md "Context and Delegation Discipline" ran while #1622 edited its wait bullets. These findings are on text that change did not touch, and several were measured against a real shell rather than reasoned about. Filed once, blocking nothing.

  1. The bullet grouping || echo '[]', || true, and a stderr redirect as one class is false for one of its three. Measured: sort --bogus exits 2 with an empty stdout; adding the stderr redirect still exits 2, so it hides the diagnostic and preserves the status, while only the two || forms convert the error. A reader trusting the grouping concludes the exit status is useless in all three cases, when it is the discriminator in the one listed last.

  2. "Make the wait emit on failure as loudly as on success, so silence means 'still running' and nothing else" does not follow from the instruction it gives. Measured: a wait written exactly as instructed, with an ERR trap and a start line, was SIGKILLed and produced zero bytes, the trap never firing. A Python wait redirected to a file produced zero bytes on both streams, because libc block-buffers to a file and the buffer dies with the process. Silence has at least three causes, and a bound reached by a kill is precisely the case that emits nothing. Making the conclusion true needs unbuffered output and a status read after exit, neither of which the unit mentions.

  3. grep -n '^## ' cannot list a level-three heading, so the Reading rule's own map does not let a reader narrow past a whole level-two section. On this file the prescribed grep returns three lines while a level-three grep returns four subsections it never shows. The same file is also 124 lines, under the rule's own "about 200 lines" threshold, so the rule is unverifiable from the unit that carries it.

  4. --jq names a flag with no tool. It is a gh flag and gh is never named in the section, and the same term recurs in the wait bullets as a reason for another rule.

  5. "the suppression the write-safety rules already forbid on a mutation" is a bare cross-reference where the same section two bullets away cites a rule properly by file and section name.

  6. "until the fleet label set is applied there" names an artifact with no location, definition, or pointer, in a sentence making it a hard precondition for hosting a handoff at all.

  7. The handoff ordering leaves two open labelled issues on a track between filing the new link and closing the predecessor, while the invariant beside it says a track holds exactly one. A checker trusting the invariant reads the correct intermediate state as a defect.

  8. The delegation bullet holds up a wide search as the model case to delegate, and the briefing template forbids the one brief a wide search needs ("never 'find the relevant files'").

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    agentsAgents instructionsproseA defect in rule or procedure text

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions