mirror of
https://github.com/PerpetualSoftware/pad.git
synced 2026-11-03 01:44:17 +00:00
7eccac77c9
* 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