Skip to content

docs(agents): rename review loop to superintend, add convergence - #209

Open
haydenshively wants to merge 4 commits into
mainfrom
docs/superintend-rename
Open

docs(agents): rename review loop to superintend, add convergence#209
haydenshively wants to merge 4 commits into
mainfrom
docs/superintend-rename

Conversation

@haydenshively

@haydenshively haydenshively commented Sep 10, 2026

Copy link
Copy Markdown
Collaborator

Summary

Renames the review-loop skill to superintend and closes two gaps in it.

The skill had grown past its name. Its highest-value beat is the one that is not review — the satisficing self-check that asks whether the work needs to exist and whether the framing is right. "Review loop" also collided with three existing surfaces: .claude/commands/review.md, the reviewer agent, and cross-check-codex (which is literally the Codex-running part).

Changes

Self-check before implementing. Parameterization B assumed a trustworthy source document — "You implement first, per the plan or TIB" — which a Linear ticket is not. Self-Check is now B's first beat, aimed at the provenance of the spec: say what you are implementing against, and treat a create-issue ticket's Possible solution as a suggestion to check against its own Context, not a spec to execute. If the ticket is the only plan there is, it is an unreviewed draft, and running A on it may beat implementing it neatly. The frontmatter description gained the matching trigger, since none of the old ones fired on "here is a ticket, go build it".

When the self-check runs, in A. The body said "after the self-check, dispatch these two agents", which read as though it happened just before dispatch. It runs against the request, as soon as the ask is fielded — before the draft exists.

Convergence. A new piece: tell the reviewer how you addressed its findings and ask whether it accepts them. A cold re-read of a changed artifact only re-derives round one, so the report-back is the work. Stated once at its canonical symbol, with the proportionality clause (one round with nothing further is convergence) and the exits (fresh session, re-run Self-Check, flag the difficulty). A and B name it in their order lines; C's thread-resolution rule is labelled as the same piece in GitHub's medium rather than duplicated.

Notation. Order lines use + for steps that run in parallel:

A: Self-Check → Independent Review + Own Pass → Synthesis → Convergence
B: Self-Check → Implement → Independent Review + Own Pass → Synthesis → Convergence
C: Synthesis → Implement → Independent Review (conditionally) → Convergence

Not in scope

.claude/commands/execute-issue.md is the actual ticket entry point and still references neither the skill nor the new self-check; its pre-push step invokes reviewer, which is Opus, and which the skill says is not an independent pass. Left alone deliberately — that flow is being reworked separately.

.claude/commands/review.md:275 says "Terminate the review loop", meaning that command's own loop over findings. Untouched.

Test plan

Docs and agent config only; no source files changed.

  • pnpm run format:check — clean
  • pnpm lint — 0 warnings, 0 errors
  • pnpm knip — clean
  • grep -rn "review-loop\|review loop\|Review Loop" — only the unrelated review.md:275 line
  • Verified the skill's YAML frontmatter parses and metadata.hermes nesting is intact
  • pnpm test and typecheck skipped: zero TS/JS changed

🤖 Generated with Claude Code

The skill covers more than review — the satisficing self-check, the clean-room
agent, and the synthesis that turns findings into decisions — and "review loop"
collided with `/review`, the `reviewer` agent, and `cross-check-codex`.

- Self-Check becomes the first beat of Parameterization B, aimed at the
  provenance of the spec: a ticket handed over is not a reviewed intent, and a
  `create-issue` ticket's `Possible solution` is a suggestion to check against
  its own `Context`, not a spec to execute.
- Parameterization A now says when Self-Check runs — against the request, as
  soon as the ask is fielded, before the draft exists rather than merely before
  the reviewers are dispatched.
- Convergence is a new piece: report back to the reviewer and ask whether it
  accepts the resolution, since a cold re-read only re-derives round one. Stated
  once at its canonical symbol; A and B name it in their order lines, and C's
  thread resolution is labelled as the same piece in GitHub's medium.
- Order lines use `+` for the steps that run in parallel.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@haydenshively haydenshively self-assigned this Sep 10, 2026
Comment thread .agents/skills/superintend/SKILL.md Outdated
Comment thread .agents/skills/superintend/SKILL.md Outdated
Comment thread .agents/skills/superintend/SKILL.md Outdated
Comment thread .agents/skills/superintend/SKILL.md Outdated
Takes all four review suggestions on #209: broaden the description's first
trigger to any task start, and trim the rationale from Convergence and from A's
self-check timing. "Once you're confident in your draft" replaces "only once
there is a draft" — the confidence bar is the real gate on dispatching.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@haydenshively
haydenshively marked this pull request as ready for review September 10, 2026 01:44
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 10, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-10T01:50:22.851643Z 7e01f5d Draft marked ready
🔒 Security Review Completed 2026-09-10T01:53:54.706026Z 7e01f5d Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Devin Review

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 7e01f5d8f7

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread .agents/skills/superintend/SKILL.md Outdated
haydenshively and others added 2 commits September 9, 2026 22:26
Synthesis's Decide bullet now says that incorporating means making the edit, so
the piece ends with a changed artifact rather than a list of intentions. That
covers A and B, which never named an apply step, without adding one to three
order lines.

Convergence's retry sentence sent a rejected artifact back to Independent
Review before the objections were processed. The objections are findings: they
re-enter Synthesis, and a fresh review is dispatched only when the artifact has
moved far enough that nobody has read what is now there — the same bar C
already applies to its conditional review.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
A synthesis that drops or defers every finding is a legitimate outcome, so the
piece cannot promise a changed artifact. The gloss on "incorporate" carries the
point on its own.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants