diff options
| author | soryu <soryu@soryu.co> | 2026-04-30 09:57:07 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-04-30 09:57:07 +0100 |
| commit | 2b695485753d55f956746b73c31c2deba0ed0a29 (patch) | |
| tree | 3965b49e1e5e14d7396844275133878997a45ebf /.github/workflows | |
| parent | 8d864f83a1d8c2ad47cf194b70d802e366a146b0 (diff) | |
| download | soryu-2b695485753d55f956746b73c31c2deba0ed0a29.tar.gz soryu-2b695485753d55f956746b73c31c2deba0ed0a29.zip | |
feat(document-mode): longer goal save countdown, per-directive folders, live task stream (#103)
Three connected UX changes for the document-mode directive UI.
## Goal save UX (DocumentEditor.tsx)
- Replace the old 3-second countdown with 60s when no orchestrator is running
and 10s when one is, so editing a goal mid-flight does not feel rushed.
- The countdown bar is hidden until the last 10 seconds; users see "Saved" /
"Unsaved changes" indicators rather than a constantly-ticking clock.
- Continuously persist work-in-progress to localStorage on every keystroke
(debounced 250ms). On mount, if a draft for the directive exists in
localStorage and differs from the persisted goal, restore it and put the
editor in dirty/pending state — leaving the page no longer loses work.
- localStorage-backed "Live start" toggle in the bar. When off, the editor
stays in "dirty" instead of auto-firing; user clicks "Save now" to commit.
- Discard button reverts the editor to the persisted goal and clears the draft.
## Sidebar restructure (document-directives.tsx)
- Drop the active/idle/archived top-level grouping; show one folder per
directive instead. Folders sort by lifecycle (active, paused, idle, draft,
archived) then alphabetically.
- Each folder header shows a colored status dot on BOTH sides (left as the
primary status icon, right as a mirror plus a pulse when the orchestrator
is live), replacing the previous "/active", "/idle" text labels.
- Inside each open folder: the directive's document is pinned at the top
(with a small star icon), then the orchestrator task (if running), then
the completion task, then any step tasks that have started.
- The currently-selected directive's folder is auto-opened so deep links
always land somewhere visible.
## Live document task stream (DocumentTaskStream.tsx, new)
- Selecting a task in a folder navigates to ?task=<id> and replaces the
Lexical editor with a document-styled live transcript: assistant prose as
flowing paragraphs, tool calls as marginalia, results as a closing block.
No log/code box.
- Comment textarea at the bottom calls sendTaskMessage on submit, the same
wire the existing TaskOutput input bar uses for interrupts. ⌘/Ctrl-Enter
submits.
- Header breadcrumb gains a "back to document" affordance to return to the
pinned doc view without reopening the sidebar.
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Diffstat (limited to '.github/workflows')
0 files changed, 0 insertions, 0 deletions
