Skip to content

ci(claude): let a rewritten comment drive the reconcile round - #383

Merged
Troublor merged 1 commit into
mainfrom
ci/comment-edit-trigger
Sep 14, 2026
Merged

Troublor merged 1 commit into
mainfrom
ci/comment-edit-trigger

Conversation

@Troublor

Copy link
Copy Markdown
Collaborator

Problem

megaeth-labs/mega-agents#317 is the demonstration: mega-putin answered mega-maxwell's open question and the reviewer never noticed.

time event
12:15:12 mega-putin posts :mag: Looking into this... (26 chars)
12:15:15 issue_comment.created → review round runs. Run log: conversation: 1 of 1 timeline entries · 26 chars — it reconciled the placeholder
12:16:11 status comment republished: still "1 open question"
12:20:31 mega-putin edits that same comment into the real answer → no event, no round, ever

Not a bot-filtering problem — allowed_bots: mega-putin is set and the run log shows the round proceeding under mega-putin[bot]. The round simply landed on the wrong revision of the comment.

Change

  • issue_comment: types: [created, edited], so the rewrite that carries the answer drives the reconcile round.
  • pr-review declines comments carrying claude-review:skip — the marker mega-putin now puts on a placeholder it intends to rewrite (megaeth-labs/mega-agents#318). The shared action enforces the same marker (fix(pr-review): let a rewritten comment drive the reconcile round .github#46, merged); the job if declines one step earlier, before a runner starts, so the placeholder costs nothing.
  • interactive pins github.event.action == 'created', so editing an old comment that mentions @claude cannot re-run a session.

The mega-maxwell[bot] exclusion already present is what keeps the sticky status comment — rewritten in place every round — from retriggering under edited.

Same change is going into every repo that opted into comment-triggered reconciliation. dist-docs is excluded: its pr-review never subscribed to issue_comment.

Test plan

Workflow-only. YAML parses; the if conditions are the existing ones plus one conjunct each.

🤖 Generated with Claude Code

https://claude.ai/code/session_01DMw1H8WTihb5CfQ7tabxdt

Copilot AI lite review requested due to automatic review settings September 14, 2026 12:40
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 14, 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-14T12:43:33.602302Z 560f049 PR opened
ℹ️ 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.

@mega-maxwell

mega-maxwell Bot commented Sep 14, 2026

Copy link
Copy Markdown
Contributor

Claude review status

Living comment — rewritten in place. The review workflow keeps this single comment up to date instead of posting a new one each round, so it always describes the latest reviewed commit and the earlier text is intentionally gone. No reply is needed here; reply to a finding in its own review thread, and answer an open question in a reply on this PR. The next review round reconciles your answer.

🛠️ Review did not finish

Attempted head 560f049f · updated 2026-09-14T12:41:14+00:00

This round did not publish: MODEL_NO_OUTPUT in phase compile. Anything listed below is from the last round that did. Re-run the workflow or push a new commit to try again.

mega-putin answers review feedback by posting ":mag: Looking into
this..." the moment it picks the work up and rewriting that same comment
into the real answer minutes later. Subscribed to `created` only, the
review round landed on the placeholder and the answer — an `edited`
event nobody listened for — was never seen, leaving the question open
with its answer directly above it (megaeth-labs/mega-agents#317).

- `issue_comment: [created, edited]`, so the rewrite drives the round.
- `pr-review` declines comments carrying `claude-review:skip`, the
  marker mega-putin puts on a placeholder it intends to rewrite. The
  shared action enforces this too (megaeth-labs/.github#46); the `if`
  declines one step earlier, before a runner starts.
- `interactive` pins `github.event.action == 'created'` so editing an
  old comment that mentions @claude cannot re-run a session.

The mega-maxwell[bot] exclusion already here is what keeps the sticky
status comment — rewritten in place every round — from retriggering.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DMw1H8WTihb5CfQ7tabxdt
@github-actions

Copy link
Copy Markdown

🧬 Mutation testing — ✅ PASS

Nothing to test — no mutants were generated on the changed lines.

@github-actions

Copy link
Copy Markdown

🧬 Mutation testing

No results at target/mutants/mutants.out — nothing was mutated (e.g. no mutatable changes).

Copilot AI 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.

🟢 Approval recommended

No unresolved review comments remain, and the workflow changes are narrowly scoped.

Pull request overview

Updates Claude workflow triggers so edited bot comments can drive reconciliation without rerunning interactive sessions.

Changes:

  • Subscribes to created and edited issue comments.
  • Skips comments marked claude-review:skip.
  • Restricts interactive sessions to newly created comments.
File summaries
File Description
.github/workflows/claude.yml Adjusts issue-comment triggers and job conditions.
Review details
  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@Troublor Troublor added api:unchanged No change to the public interface or API spec:unchanged No change to any `mega-evm`'s behavior comp:misc Changes to the miscellaneous part of this repo agent Generated by AI agents labels Sep 14, 2026
@Troublor
Troublor merged commit bf362f4 into main Sep 14, 2026
46 of 48 checks passed
@Troublor
Troublor deleted the ci/comment-edit-trigger branch September 14, 2026 12:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

agent Generated by AI agents api:unchanged No change to the public interface or API comp:misc Changes to the miscellaneous part of this repo spec:unchanged No change to any `mega-evm`'s behavior

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants