* [aidan] feat/workflow-auto-naming: auto-generate workflow titles from steps
Generate a title + description from a workflow's steps (one aux call,
reused for step labels) whenever it is still auto_named, so a workflow
built in the Edit Agent names itself on commit instead of staying
"New workflow". A manual rename sets auto_named=False and is never
overwritten. Stream the aux call (non-streaming drops content on some
9router lanes) and fall back to a step-derived title when the model is
unavailable.
* [aidan] feat/workflows: hide unsaved new workflows until first save
A brand-new "+ New" workflow is created with unsaved=true and kept out
of the hub's scheduled/unscheduled lists while the user is still building
it in the Edit Agent. The first commit (Save) clears the flag and the
workflow appears. Every other create path stays visible immediately.
* [aidan] ux/workflows: remove redundant save workflow button
The Edit Agent already has Discard/Save controls in its strip, so the
header "Save Workflow" button was a duplicate save path. Remove it and
its pulse/edit-session-id wiring; the model/time subtitle stays.
* [aidan] ux/workflows: animate title on auto-rename
Wrap the workflow card title in the same Typewriter the chat card uses,
so when the auto-generated name replaces the placeholder after Save it
retypes letter-by-letter. Gated on a real (non-placeholder) title so it
never animates on mount or for already-named workflows.
* [aidan] ux/workflows: animate sidebar title on auto-rename
Wrap the calendar hub's sidebar row title in the same Typewriter the
workflow card uses, so a title that auto-renames retypes letter-by-letter
in the sidebar too. Extract the placeholder/isRealTitle guard into the
shared workflowVisuals so the card and sidebar stay in sync.
* [aidan] bug: fix schedule button
* [aidan] fix/agent-errors: surface provider rate limits
* [aidan] ux/cards: click-to-rename for chat and workflow titles
Single-click a card's title to enter edit mode inline. Commit on Enter/blur,
cancel on Escape. Rename persists via PATCH for workflows and sessions.
* [aidan] feat/workflows: seed build prompt for zero-step workflows
When a new workflow has no steps, seed the agent with a prompt asking
the user to describe what the workflow should do, rather than starting blank.
* [aidan] feat/workflows: add-to-schedule popover for unscheduled workflows
Clicking the "+" on an unscheduled workflow row opens a popover with two options:
- Keep this schedule: enables the workflow's existing cadence and moves it to Scheduled
- Change schedule: opens the scheduling editor to pick a different time
* [aidan] ux/workflows: wire add-to-schedule popover and simplify New button
- Made the "+" icon on unscheduled workflow rows clickable, opening a popover
to keep or change the schedule
- Removed AddIcon from toolbar "New" button (now reads "New" instead of "+ New")
* [aidan] fix/scheduled-tasks: open schedule calendar when Schedule pill clicked
Fixed the Schedule pill click being swallowed by the toolbar's dismiss handler.
Exempted the toolbar pills via data-toolbar-pills so their click handlers fire.
* [aidan] ux/workflows: open New workflow in agent build chat instead of empty card
When creating a new workflow from the hub, open it in edit_agent view (with the
agent builder chat) instead of a preview card. The workflow is created on the
backend first so the embedded session has a real ID.