Files
pad/plugin
xarmian 7eccac77c9 feat(web): explain an empty chat roster and how agents join (TASK-4186 PR B) (#2359)
* feat(web): explain an empty chat roster and how agents join (TASK-4186 PR B)

/messages shows a help block when both the conversation list and the
sessions read answered and found nothing, replacing the bare "No
conversations yet.". A pending, failed or unavailable read is unknown and
never renders "No one to message yet". A non-empty roster with no
conversations gets a "Start a conversation" heading. Docs and both skill
copies say how an agent gets a chat identity and that its DM is @<its-name>.

Claude-Session: https://claude.ai/code/session_01Pa22hHHb1atXYf1JmBYE1v

* test(web): say why the mobile chat nav spec skips off the phone project (TASK-4186 PR A r2-L1, folded into PR B)

Claude-Session: https://claude.ai/code/session_01Pa22hHHb1atXYf1JmBYE1v

* fix(web): describe how an agent joins chat accurately, and make the copy buttons accessible (TASK-4186 PR B r1)

The empty-state, docs/api.md and both SKILL.md files now say the Pad
monitor (pad watch --stream --for-session) is what the agent harness runs,
from a .pad.toml-linked directory, and state the name order in
ResolveAgentName's order. The monitor line loses its Copy button. The
remaining Copy button gets a per-command aria-label, a polite live status,
a visible failure message and a per-command timer. Tests pin the order
(Go chain test + copy phrase) and each accessibility behaviour.

Claude-Session: https://claude.ai/code/session_01Pa22hHHb1atXYf1JmBYE1v

* fix(web): name chat arming in the agent setup copy, keep the detail in docs, re-announce repeat copies (TASK-4186 PR B r2)

Claude-Session: https://claude.ai/code/session_01Pa22hHHb1atXYf1JmBYE1v

* test(cli): scope the chat-copy guard to the chat-identity text so a dropped arming clause fails (TASK-4186 PR B)

Claude-Session: https://claude.ai/code/session_01Pa22hHHb1atXYf1JmBYE1v

* fix(docs,web): keep the chat reference whole, harden the copy guard, and fix the copy timer (TASK-4186 PR B r3)

Claude-Session: https://claude.ai/code/session_01Pa22hHHb1atXYf1JmBYE1v

* fix(web): a copy failure keeps its message, and nothing writes after unmount (TASK-4186 PR B r4)

Claude-Session: https://claude.ai/code/session_01Pa22hHHb1atXYf1JmBYE1v

* fix(web): only the latest copy attempt updates the status, and every outcome is announced (TASK-4186 PR B r5)

Claude-Session: https://claude.ai/code/session_01Pa22hHHb1atXYf1JmBYE1v

* fix(web): drop the copy button's auto-clear timer so no stale attempt can strand its state (TASK-4186 PR B r6)

Claude-Session: https://claude.ai/code/session_01Pa22hHHb1atXYf1JmBYE1v
2026-10-31 21:42:29 -04:00
..