Skip to content

chore: promote dev → main (JIRA create→update coalesce)#1180

Merged
zbigniewsobiecki merged 1 commit intomainfrom
dev
Apr 24, 2026
Merged

chore: promote dev → main (JIRA create→update coalesce)#1180
zbigniewsobiecki merged 1 commit intomainfrom
dev

Conversation

@zbigniewsobiecki
Copy link
Copy Markdown
Member

Promotes dev to main.

Includes:

🤖 Generated with Claude Code

… double-firing agents (#1179)

When a user creates a JIRA issue directly in a non-default workflow column,
JIRA emits two webhooks ~hundreds of ms apart: `issue_created` at the
workflow's initial status, then `issue_updated` transitioning to the target
column. Each webhook resolves a different agent via `STATUS_TO_AGENT`, so
both fire on the same work item (observed as UA-11: implementation +
planning running concurrently).

Fix: router-level coalesce window keyed by `${projectId}:${workItemId}`.
A `pm:status-changed` create trigger waits `PM_CREATE_COALESCE_WINDOW_MS`
(default 2000, 0 disables) before enqueue; an update for the same key
within the window supersedes the create — no ack posted, no job queued,
`onBlocked` called to clear any dedup markers. Trivially also protects
Linear against the same code-shape risk.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@zbigniewsobiecki zbigniewsobiecki merged commit a91dc53 into main Apr 24, 2026
15 checks passed
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 24, 2026

Codecov Report

❌ Patch coverage is 91.54930% with 6 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/pm/create-coalesce-window.ts 88.88% 5 Missing ⚠️
src/router/webhook-processor.ts 95.45% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

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.

1 participant