Skip to content

claude.yml: port qwt's late-comment dedup / claude-absorbed marker / late-@claude-review rescue #44

@d-morrison

Description

@d-morrison

Surfaced while migrating d-morrison/qwt to consume these reusable workflows (qwt PR d-morrison/qwt#115, tracked in d-morrison/qwt#116, Phase 2).

qwt's standalone claude.yml implements duplicate-run suppression and late-comment handling that the reusable claude.yml does not reproduce via any input. This is the biggest blocker to qwt migrating its agent workflow. It is the payload of qwt issues d-morrison/qwt#73 / #90 / #95.

Missing machinery (all absent from the reusable workflow)

  1. Dedup pre-step — "skip if this comment was already handled by an active run": checks for a 🚀 reaction marker and skips the queued duplicate run.
  2. Absorbed-ids marker — the prompt instructs Claude to emit a <!-- claude-absorbed: <ids> --> marker listing comments it absorbed during its late-comment polling loop.
  3. React-post-step — reads that marker from Claude's output and reacts 🚀 to each absorbed comment, so their own queued runs short-circuit on (1).
  4. Late @claude review re-dispatch — re-scans for a late @claude review request that a dedup'd run would otherwise have dropped, and dispatches the review workflow.

The reusable workflow has the basic polling loop but none of the marker/dedup/late-review-rescue layer, so after migration a late @claude comment absorbed by a running session would still spawn its own (double-processing) run.

Ask

Port this machinery into the reusable claude.yml (additive; no consumer input changes). Then move @v1.

Consumer waiting on this: d-morrison/qwt.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions