You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Strict final-answer completion: the complete notification now fires only when the last assistant/message carries a non-empty text block with no tool/call after it. Tool-call-only, concludes-turn, and empty no-op turns stay fully silent.
Bounded dedupe state: notification dedupe uses FIFO-bounded containers per session and reclaims state on session/disposed, preventing unbounded memory growth in long-running sessions.
Session-layer integration test against a real DSH SessionStore (src/session-layer.test.js).
Notification semantics (v0.11.x)
complete → done: user input → turn/start → agent work → final assistant text → turn/end (reason.kind = completed), main session only (delegationDepth ?? 0 === 0), minimum duration guard.
approval/asked → permission, ask_user_question → question, goal block → block, agent errors → error — each with its own semantic sound (WAV pack or BEL fallback).
Verification
140+ tests pass, including strict final-answer gating, bounded dedupe (FIFO), session dispose reclamation, and abnormal delegationDepth/turn-number rejection.
Published to npm as dsh-notify-bell@0.11.1 (latest).