Skip to content

feat(herdr): alert on spaces whose agent finished unseen - #88

Merged
barbatdev merged 1 commit into
mainfrom
feat/herdr-alert-on-done
Oct 30, 2026
Merged

barbatdev merged 1 commit into
mainfrom
feat/herdr-alert-on-done

Conversation

@barbatdev

Copy link
Copy Markdown
Owner

Summary

  • The space waiting alert (pulsing border, "● te espera" pill, machine header count) now fires for done as well as blocked.
  • done is Herdr's "finished while the user wasn't looking" state, the common case of an agent waiting on the person; it clears to idle once the space is viewed.
  • One waits(status) helper drives the pulse timer, the machine count and the row.

Test plan

  • node --check on the mod
  • Live screenshot with real agents: agent-dev header shows "● 6"

🤖 Generated with Claude Code

https://claude.ai/code/session_01A9D7ph123Jn8iB1eGbr8Nz

The waiting alert only fired for blocked agents, which are rare; the
everyday "waiting on you" state is done (finished while unseen). A new
waits() helper covers both and drives the pulse, the machine count and
the space row.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01A9D7ph123Jn8iB1eGbr8Nz
@barbatdev

Copy link
Copy Markdown
Owner Author

Fleet review (glm)

Lens: requirements + adversarial. The PR unifies the 'someone is waiting on the person' signal behind a waits(status) helper that now also fires for done, applying it consistently to the pulse timer, the machine-header border and count, and the row border with the '● te espera' pill. I read the full file at the reviewed head and verified every former status === "blocked" call site was converted (pulse timer line 79, header count line 253, row line 322); glyph() semantics for done are unchanged from before (it already rendered ● for done). The done state still reuses the blocked visual language (t.blocked pulse color, blocked-bg pill, and the 'waiting on the person' comment), which matches the PR's stated intent of treating done as 'finished while the user wasn't looking'. No linked issue with acceptance criteria was attached, so I reviewed against the PR's own summary and test plan; the claimed clear-to-idle-on-view behavior lives outside this mod and is not touched by the diff. No defects found.

Suggestion (1)

  • done and blocked are visually indistinguishable (herdr/desktop/mods/refactoria-spaces/main.js:335): A done space and a blocked space render exactly the same signal: same t.blocked pulsing border, same t.blocked '● te espera' pill. The PR body frames done as 'finished while the user wasn't looking', which is a different situation from blocked (the agent is stuck on something). If the user should react differently, a distinct tone (e.g. t.done via tone()) would make the states tell apart at a glance. Not required for merge — the PR's stated goal is precisely that both states mean 'the agent is waiting on you'.

Question (1)

  • Where is the done → idle clear implemented? (herdr/desktop/mods/refactoria-spaces/main.js:42): The PR body states that done 'clears to idle once the space is viewed'. That transition is not part of this mod's diff — the mod only reads s.status. If that clearing behavior is not already implemented in core, every finished space would pulse and count as waiting forever, which would be the exact alert fatigue this feature tries to avoid. Can you confirm the clear-on-view transition exists outside this change?

Verdict: ready to merge

@barbatdev
barbatdev merged commit db1d543 into main Oct 30, 2026
1 check passed
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