Skip to content

Scheduled hot intake re-reviews unchanged PRs after owned comment timestamps outrun sync metadata #1006

Description

@PollyBot13

What Problem This Solves

ClawSweeper repeatedly performs full scheduled-hot reviews of unchanged pull requests after updating its own durable review comment. The owned mutation advances GitHub item updated_at slightly after review_comment_synced_at, so the scheduler classifies the bot-generated timestamp as fresh target activity once the one-hour exact-review suppression window expires.

Why This Change Was Made

Live reproduction on openclaw/clickclack#117:

  • Exact scheduled-hot run: https://github.com/openclaw/clawsweeper/actions/runs/30704608131
  • Reviewed unchanged head d26c11abba773132c51defb6e647db3a69610003
  • Queue source action: scheduled_hot_intake
  • Source updated_at: 2026-08-01T12:44:07Z, created by the prior ClawSweeper review publication
  • Review completed at 2026-08-01T14:52:41Z
  • ClawSweeper synced its durable review comment at 2026-08-01T14:53:28Z
  • GitHub then exposed the PR updated_at as 2026-08-01T14:53:29Z
  • The run performed a full model review with cache_hits=0 despite unchanged head/source/pull/review activity

The policy currently compares GitHub item updated_at to local sync wall-clock timestamps. The server-visible item timestamp can land one or more seconds later, leaving a permanent false activity marker.

User Impact

Affected items generate recurring review emails, consume model/Actions capacity, churn rating/status labels, and obscure genuine review changes. #117 accumulated repeated no-finding reviews on the same head; openclaw/openclaw#114160 and other tracked items show the same pattern.

Evidence

Expected: ClawSweeper-owned comment or label mutations remain identifiable as owned activity, while human comments, pushes, reviews, pull-state changes, and explicit review commands still trigger fresh review.

Proposed fix: persist the authoritative post-mutation GitHub item updated_at and use exact equality as owned-activity coverage. Preserve fail-open behavior when that observation is missing and preserve daily/normal cadence.

AI-assisted: yes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Normal priority bug or improvement with limited blast radius.clawsweeper:linked-pr-openClawSweeper found an open linked pull request for this issue.clawsweeper:no-new-fix-prClawSweeper does not recommend queueing a new automated fix PR for this issue.clawsweeper:source-reproClawSweeper found a high-confidence source-level issue reproduction.impact:otherThis issue has meaningful maintainer-visible impact outside the owned taxonomy.issue-rating: 🦞 diamond lobsterVery strong issue quality with high-confidence source-level or clear reproduction.

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions