feat(desktop): an item of an agent with no plan waits beside the plans', counts on the badge, and is announced with its click opening the agent's page
Step 9 (part two) of the automations plan (docs/proposals/automations-scope.md): the desktop's account-wide Inbox read learns planless items. It builds on #2688 (the server's planless/automations keys) and #2720 (the agent page).
What changes
- App state carries planless items.
AppInboxSlicegainsplanless: each open item of an agent with no plan, with its agent as its row names it now and the automation and repository standing where a plan would. It also gainsautomations: each automation holding such items, asplanslists plans. Main writes both from the account Inbox read it already holds (agent-notices.ts), and a change in the automations alone is written as a change in plans is. - The Dock badge counts them. It now counts plans' open items and planless ones alike.
- A planless item is announced.
- When an item of a planless agent opens since the last answer, behind the window, it's posted as a notification titled by its automation's name, or its repository where the reader may not read the automation (#2717), over the agent and the item's title.
- Clicking it opens the agent's own page.
AgentPlace.planIdmay now be null, and the bridge'sonShowAgentcarries it. - In front of the window nothing is said. The window's own toast opens a plan, and the Inbox list (next PR) shows the item.
- The renderer opens the page.
app.tsxroutes anonShowAgentwith a null plan toagentView.onOpen.
Next is the Inbox list and pane for planless items (step 9's last part).
Tests
agent-notices.test.ts: a planless item in the read's answer counts on the badge beside a plan's (2), is announced by its automation's name, and its click opens{ planId: null, agentId }.- The renderer and main suites pass.
pnpm check:affected passes. This touches the desktop: CI cannot verify the Mac UI, and ./scripts/verify.sh was not run (LUKE-159 stands in before the first release).
š¤ Generated with Claude Code
Summary by cubic
The desktop's account-wide Inbox now treats items from agents with no plan the same as planned ones. They appear in the app state beside plans, count on the Dock badge and the sidebar's Inbox row, and are announced as notifications titled by their automation (or repository if unreadable) when they open. A rename with nothing waiting moving ā of the automation, or of the agent by its model ā is written as the item's new name. Clicking such a notification opens the agent's own page instead of a plan tab.