Skip to content

Fix: DM processing state is missing — message pending->processing and Bot avatars should show working #536

Closed

Description

@DoodleBears

Expected (product language)

  1. A Human DM message is admitted to the Bot Inbox as pending (admission pending/retryable, delivery state pending).
  2. As soon as a turn (steer or a fresh turn) actually takes it into the prompt, the message shows processing (blue), and the Bot's presence shows it is working — in the Channel body footer avatar (with its motion) and in the app sidebar avatar.

Observed

After sending a DM message, no processing state appears: neither the Channel body footer avatar nor the app sidebar avatar shows the Bot working, even while the turn runs.

Pointers to verify

  • Per-message states exist client-side: packages/client/src/client/channel-delivery-receipt.tsx renders delivery states with --bh-delivery-color-<state>; Host tests assert running → handled on both the steer and non-steer paths.
  • The avatar state comes from bot.aggregateState via toBotState (packages/client/src/client/bot-sidebar.tsx:317); the Host tracker is packages/core/src/state/bot-state.ts. Check whether an Orchestrator turn (DM, steered or not) ever flips the aggregate state to a working value, whether that change is streamed to the client, and whether the client has a distinct visual (colour/animation) for it in the sidebar avatar and the Channel body footer avatar.
  • Check the DM Channel body footer avatar specifically (composer area) versus the sidebar one; the two may read different state sources.

Acceptance criteria

  • While a DM turn is running (steered or fresh), the message shows processing and both avatars show the working state with their motion.
  • When the turn succeeds the visuals settle to the handled/idle state; on failure the message shows the needs-repair state.

Refs #528 (the steer path) — the admission/delivery transitions are already covered by Host tests; this is the presence/visual layer.

Activity

  1. added this to the v1.0 milestone on Sep 30, 2026
  2. added
    bugSomething isn't working
    ready-for-agentFully specified, ready for an AFK agent
    feature:activityPersonaBot activity, presence, and output signals
    feature:inboxBot Inbox and Human Inbox attention
    on Sep 30, 2026
  3. moved this to Todo in Roadmapon Sep 30, 2026
  4. DoodleBears commented on Oct 1, 2026

    @DoodleBears
    ContributorAuthor

    Agent work claim

    • Agent: Codex
    • Task: codex/local/01a0e445-0c0f-70e1-bad4-fd99c8cfaa21 (not a DSH Session)
    • Issue scope: reproduce and fix the real DM processing/presence path using one Host-owned activity snapshot across sidebar and composer; preserve message admission settlement. Audit the handed-off PR feat(activity): sync DM presence from Host projection #230, retain applicable work, and validate against current main with real DSH evidence and fresh Human QA.
    • Branch: codex/536-live-dm-activity
    • Started: 2026-10-01 07:47 UTC
    • State: active

    #120 previous task explicitly handed off PR #230 for review; #536 currently has no task claim. This task takes over the shared runtime path under Human's approved sequence. Old PR #230 will remain open until replacement or integration is verified; its recorded Human QA and task history are retained.

  5. added
    agent:activeOne or more coding-agent tasks currently claim this issue; see claim comments for task IDs
    on Oct 1, 2026
  6. DoodleBears commented on Oct 1, 2026

    @DoodleBears
    ContributorAuthor

    Agent work outcome

    • Task: codex/local/01a0e445-0c0f-70e1-bad4-fd99c8cfaa21
    • State: paused for Human QA
    • PR: #659, head 23e7efa59a14338261a7f05a9911d8c8bd1e272a.
    • Result: actual Host-owned activity is delivered live to the shared row/pinned/rail/composer Avatar; directly admitted Human DMs publish running when their prompt starts, and stream connection supplies current receipt baselines.
    • Verification: real isolated DSH fresh-turn and steer cases completed native Memory operations and model replies; both input admissions entered running and settled handled. Three sidebar layouts showed actual thinking/working and idle settlement. PR contains immutable, accessible screenshots and sanitized records. Final Linux CI passed lint, format, typecheck, full tests, build and docs; the CodeRabbit stream-reader finding is fixed and its thread resolved; final head CodeRabbit completed with no new actionable comments.
    • Human QA: pending, not inferred from automated evidence. No merge or issue closure yet.
    • Remaining scope: accept Fix: DM processing state is missing — message pending->processing and Bot avatars should show working #536 and merge fix: show live DM processing and shared Bot activity (#536) #659 after Human QA.
  7. added and removed
    agent:activeOne or more coding-agent tasks currently claim this issue; see claim comments for task IDs
    on Oct 1, 2026
  8. DoodleBears commented on Oct 1, 2026

    @DoodleBears
    ContributorAuthor

    Agent work outcome

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingfeature:activityPersonaBot activity, presence, and output signalsfeature:inboxBot Inbox and Human Inbox attentionready-for-agentFully specified, ready for an AFK agent

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions