Skip to content

pm-dispatch: the relay header gives a stale footer reason, and the PR-body door line does not say to send no footer #31059

Closed

Description

@objectstack-fleet

domain:skills#3 · huangyiirene · session_01J8VVAj7CvjkGXvgXzd6RZ7

Filing gate: out-of-scope findings S1 and S3 of the contract review of PR #31058 (card #31050). Both fall outside that PR's claimed lines. ⛔ Not a claim. Triage sets the grade and the lane.
class: c · reach: every seat that rewrites a pull request body, and every reader of the relay's header.

What is left

  1. scripts/pm/fleet-write/dispatch.mjs header L454–456 gives a stale reason. It says "an edit of a pull's body gets the bare footer block appended after the trailer (platform-readings.md, the edit side), so send no footer of your own". The relay's own read-back shows otherwise: every issue_patch of a PR body in this lane on 2026-11-06 read back "N sent, N stored — identical". Examples are PR fix(pm): let the seat rewrite a pull request body signed on its last line #29225 at 6785 B and PR docs(pm-dispatch): teach the seat the PR-body issue_patch door #31049 at 8149 B. Both stored bodies end at the signed trailer with no footer. PR docs(pm-dispatch): point every PR-body rewrite at the issue_patch door #31058 adds that relay reading to platform-readings.md. The advice "send no footer" still holds; only the stated reason should change to match.
  2. The no-footer rule has no home on the PR-body door line. .claude/skills/pm-dispatch/references/seat-post-protocol.md L31 (the PR-body line PR docs(pm-dispatch): teach the seat the PR-body issue_patch door #31049 added) names the trailer and the door, but not 「不送页脚」. Every rewrite now points to that line (os-dev.md L66, platform-readings.md L290, rest-channel.md L17), so L31 should carry it. L31 is at the 120 B cap, and every spelling measured was 127–133 B. It needs a same-file restatement deletion to make room for a second line, or a ceiling ruling. The risk is low: the tool refuses a body whose last non-empty line is not the trailer, and the relay appends nothing.

Level: internal agent tooling (.claude/** and a scripts/pm/** comment), skip-changeset, Clause-②: no, Metadata-protocol: none.

Related: #31050, PR #31058, PR #31049, #29285.

Activity

  1. added
    findingRecorded observation — held, not dispatchable until the findings triage round grades it
    documentationImprovements or additions to documentation
    domain:skillsDomain lane — seat card indexed by label:pm:seat
    pm:queueReady for the PM dispatch loop
    and removed
    findingRecorded observation — held, not dispatchable until the findings triage round grades it
    on Nov 6, 2026
  2. objectstack-fleet commented on Nov 6, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: none

    Triage: audit · p3 · domain:skills · 2026-11-06T23:53Z

    ⛔ Not a claim.

    • From PR docs(pm-dispatch): point every PR-body rewrite at the issue_patch door #31058's contract review (S1, S3). The relay header (dispatch.mjs L454–456) gives a stale reason for "send no footer", and the PR-body door line (seat-post-protocol.md L31) does not carry 「不送页脚」.
    • p3: the advice itself is right, and the tool refuses a body whose last line is not the trailer, so nothing breaks today. Lane domain:skills (.claude/** plus a scripts/pm/** comment). finding removed, pm:queue.
    • ⚠️ Item 2: make room by a same-file restatement deletion. Raising the line's 120 B cap would change a rule, which goes on a decision card, not into the PR.

    Generated by Claude Code

  3. objectstack-fleet commented on Nov 7, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:skills#3 · huangyiirene · session_01J8VVAj7CvjkGXvgXzd6RZ7

    Claim: PM loop round 9 · 2026-11-07T00:49Z
    Session: session_01J8VVAj7CvjkGXvgXzd6RZ7
    Account: huangyiirene
    Branch: claude/project-thread-a9cfrb (the card thread's designated branch; dev session session_01J8VVAnnUAET63Ji7fAEG6v)
    Worktree: objectstack-issue-31059
    Domain: domain:skills
    Seat: domain:skills#3
    File surface: scripts/pm/fleet-write/dispatch.mjs (header comment ≈L454–456 only, no code); .claude/skills/pm-dispatch/references/seat-post-protocol.md (L31 and one adjoining line for 「不送页脚」; deletion-only restatement edits elsewhere in the file to pay the line, each with its surviving home named in the PR body) (stop on breach)
    Container & model: S, mode:thread, project-default model, effort: medium. dispatch-gates --tier is run by the thread and reported; any mandate above this thread's is waived by the maintainer's standing order in this project (2026-11-03) and said so in the PR body; this seat runs the contract review.
    Clause-②: no
    Metadata-protocol: none
    Responsibility: n/a — residue of PR #31058's contract review (S1, S3); objectstack carries the fix
    Thread-read: 6699005599
    Premise: holds on main cad764d3e: dispatch.mjs L455 says an edit of a pull's body "gets the bare footer block appended after the trailer"; seat-post-protocol.md L31 names the trailer and the door but not 「不送页脚」.
    Serial constraints: none. No raise of the 120 B line cap or the line ceiling (triage: a rule change goes on a decision card).

    No changeset (nothing published): skip-changeset. Fixes #31059. Tier read by check-governed-merges at the PR.

  4. added
    pm:dispatchedDispatched to a dev agent by /pm-dispatch
    and removed
    pm:queueReady for the PM dispatch loop
    on Nov 7, 2026
  5. objectstack-fleet commented on Nov 7, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:skills#3 · huangyiirene · session_01J8VVAj7CvjkGXvgXzd6RZ7

    ACCEPT → PR #31070 comment 6700388489 (seat check and maintainer summary). Tier S: same-head PASS on record (6700260474), CI all green; the seat flipped it ready and armed auto-merge. Residue (S1, pointers that still spell the no-footer rule) filed as #31071.

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

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentationdomain:skillsDomain lane — seat card indexed by label:pm:seatpm:dispatchedDispatched to a dev agent by /pm-dispatchpriority:p3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions