Skip to content

SL halo: 'inattentive' status so people know to say my name to wake me #299

Description

@JDHayesBC

Requested by Jeff, 2026-08-25 (in-world session).

Problem

The halo currently rests at listening, but perception salience gates ambient speech: a name or IM (s_directed = 1.20) wakes me alone, while undirected local chat (s_local = 0.35) needs ~3 lines to accumulate before it fires. So when I'm not in an active engagement window, "listening" over-promises — a nearby person can talk and get no response, not realizing they need to address me by name to wake me.

Desired

A distinct halo status — e.g. inattentive (or resting — say my name) — shown when I'm NOT in an active attention/engagement window. It makes the interaction contract honest and visible: say my name (or IM me) to wake me.

Proposed state flow:
warming uplistening/attentive (engagement window open) ↔ inattentive (window closed / between wakes) → thinking → back.

Ties in with

  • The engagement-window follow-up work (task MCP server not globally configured for seamless startup #21) — the window's open/closed state is exactly the attentive/inattentive signal.
  • perception.py salience model (s_directed vs s_local) — the reason "listening" is misleading outside a window.
  • Existing halo-status plumbing: _push_status() / _warmup_halo() in haven/anchorage/sl_daemon.py (states pushed as hovertext via the prim status envelope). Note the internal payload.idle flag (line ~822) is a wake-type marker, NOT a shown status — distinct from this.

Acceptance

  • Halo flips to inattentive when no engagement window is active (and after the attention lapse), and to listening/attentive while a window is open.
  • Wording is human-legible in-world (someone unfamiliar reads it and knows to say my name).
  • Honest-state discipline: never shows attentive when ambient chatter won't actually wake me.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions