Skip to content

fix(board): clear heartbeat_at on release so the next owner has no stale liveness - #2623

Merged
namastex888 merged 1 commit into
devfrom
fix/release-clears-heartbeat
Jul 22, 2026
Merged

namastex888 merged 1 commit into
devfrom
fix/release-clears-heartbeat

Conversation

@namastex888

Copy link
Copy Markdown
Contributor

What

releaseTask returned an in_progress card to ready and cleared claimed_by/claimed_at but left heartbeat_at behind. After a release the card kept the prior owner's pulse, so when a new worker checked it out the liveness badge computed from the old heartbeat and could show a fresh checkout as ▶ running before it ever pulsed.

Fix

Clear heartbeat_at in the same conditional release UPDATE (the atomic WHERE ... AND status = 'in_progress' CAS is unchanged, so the done-card no-resurrection and phantom-event guarantees hold). Added a regression test: release → heartbeatAt null → survives re-claim. Right-reason verified (test fails without the source change).

Provenance

Found by the codex bot's P2 review comment on the #2619 dev→main promotion; deferred out of that promotion and landed here per the resolution note. typecheck / biome clean; bun test src/lib/v5/task-state.test.ts → 67 pass / 0 fail.

…liveness

releaseTask cleared claimed_by/claimed_at but left heartbeat_at, so after a
release the card kept the prior owner's pulse. when a new worker checked it
out, the liveness badge computed from the old heartbeat and could show a
fresh checkout as running (▶) before it ever pulsed. clear heartbeat_at in
the same conditional UPDATE; add a regression test (release → heartbeatAt
null → survives re-claim).

found by codex PR review of #2619 (P2).
@gemini-code-assist

Copy link
Copy Markdown
Contributor

Caution

The consumer version of Gemini Code Assist on GitHub has been sunset. All code review activity has officially ceased.

@coderabbitai

coderabbitai Bot commented Jul 22, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Pro

Run ID: 6f131cb2-5001-44e3-a7c4-3e0698ac0fa5

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/release-clears-heartbeat

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@namastex888
namastex888 merged commit 0cde566 into dev Jul 22, 2026
16 checks passed
@automagik-genie
automagik-genie deleted the fix/release-clears-heartbeat branch September 25, 2026 04:50
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