docs: specify continuous authoring workspace
This commit is contained in:
@@ -16,13 +16,13 @@ run, interrupt, output, or trace proof in Scenes 10 through 12.
|
|||||||
|
|
||||||
This slice contains:
|
This slice contains:
|
||||||
|
|
||||||
- A full-screen, read-only Scene 8 conversation with one operator request and
|
- A full-screen, read-only Scene 8 conversation with operator/assistant turns
|
||||||
a concise external-agent response.
|
interleaved with prepared tool activity.
|
||||||
- A Scene 8 to Scene 9 conversation-receipt transition.
|
- A continuous Scene 8 to Scene 9 conversation transition.
|
||||||
- A deterministic prepared-authoring recording with literal `wf` commands,
|
- A deterministic prepared-authoring recording with literal `wf` commands,
|
||||||
command results, and phase-specific workflow projections.
|
command results, and phase-specific workflow projections.
|
||||||
- A Scene 9 workflow canvas with an anchored `Agent trace` control.
|
- A Scene 9 workflow canvas with a synchronized compact chat dock.
|
||||||
- A floating trace panel that opens at the current authoring phase.
|
- Expandable tool groups inside the dock instead of a separate trace modal.
|
||||||
- Keyboard, route, and responsive behavior for the new surfaces.
|
- Keyboard, route, and responsive behavior for the new surfaces.
|
||||||
|
|
||||||
This slice excludes:
|
This slice excludes:
|
||||||
@@ -48,10 +48,10 @@ primitive. Installing either generated component unchanged would conflict with
|
|||||||
the deterministic source-owned transcript projection.
|
the deterministic source-owned transcript projection.
|
||||||
|
|
||||||
Therefore this slice keeps `AssistantOperatorThread` as a read-only renderer.
|
Therefore this slice keeps `AssistantOperatorThread` as a read-only renderer.
|
||||||
It adopts the templates' readable tool grouping, floating-panel vocabulary,
|
It uses the source-owned assistant-ui tool fallback and tool-group components
|
||||||
focus behavior, and motion language without importing their whole runtime
|
for both the full thread and compact dock. A later live-agent slice may
|
||||||
surface. A later live-agent slice may introduce a real assistant runtime,
|
introduce a real assistant runtime, `thread.json`, and a truthful slash-command
|
||||||
`thread.json`, and a truthful slash-command composer together.
|
composer together.
|
||||||
|
|
||||||
References:
|
References:
|
||||||
|
|
||||||
@@ -66,9 +66,9 @@ References:
|
|||||||
|
|
||||||
Scene 8 is a full-screen conversation with no graph, lifecycle rail, evidence
|
Scene 8 is a full-screen conversation with no graph, lifecycle rail, evidence
|
||||||
receipt, or console chrome competing for attention. It must read as a real
|
receipt, or console chrome competing for attention. It must read as a real
|
||||||
chat transcript: visibly separated user and assistant turns, normal message
|
chat screen: visibly separated user and assistant turns, normal message
|
||||||
spacing, and no orphaned tool block presented as the whole conversation. It
|
spacing, and prepared tool groups interleaved with assistant narration. It has
|
||||||
has two beats:
|
two beats:
|
||||||
|
|
||||||
1. `request`: the operator asks for a reusable thesis-readiness workflow from
|
1. `request`: the operator asks for a reusable thesis-readiness workflow from
|
||||||
selected documents and an issue board.
|
selected documents and an issue board.
|
||||||
@@ -80,40 +80,28 @@ The assistant's final handoff response contains a concise factual summary of
|
|||||||
the five prepared authoring phases. It must say these are prepared operations,
|
the five prepared authoring phases. It must say these are prepared operations,
|
||||||
not hidden reasoning or autonomous live execution. The request and handoff
|
not hidden reasoning or autonomous live execution. The request and handoff
|
||||||
beats use the same conversation source, revealing additional already-recorded
|
beats use the same conversation source, revealing additional already-recorded
|
||||||
turns rather than synthesizing new text at render time.
|
turns and tool groups rather than synthesizing new text at render time.
|
||||||
|
|
||||||
### Transition: Conversation Receipt
|
### Transition: Continuous Conversation Dock
|
||||||
|
|
||||||
The presentation must not attempt to morph assistant-ui Thread internals into
|
Scene 9 keeps the same assistant thread visible as a compact dock at the bottom
|
||||||
the floating trace panel. Instead, when Scene 9 enters, the final Scene 8
|
of the stage. The dock is not a screenshot, receipt, or second transcript. It
|
||||||
handoff contracts into a small presentation-owned receipt at the lower edge of
|
projects the same stable message IDs and tool-call IDs used by Scene 8.
|
||||||
the workflow canvas:
|
|
||||||
|
|
||||||
```text
|
On scene entry the thread container contracts while the workflow canvas takes
|
||||||
Prepared workflow
|
the upper stage. The active phase's tool group is expanded and scrolled into
|
||||||
Discover · author · validate
|
view; completed groups collapse to one-line status receipts. The dock may be
|
||||||
Open agent trace
|
manually expanded, but it never covers the primary workflow projection.
|
||||||
```
|
|
||||||
|
|
||||||
The receipt is the visual bridge between scenes and the accessible trigger for
|
|
||||||
the Scene 9 trace panel. Its content remains factual and constant while the
|
|
||||||
active authoring phase changes.
|
|
||||||
|
|
||||||
### Scene 9: Prepared Workflow Lifecycle
|
### Scene 9: Prepared Workflow Lifecycle
|
||||||
|
|
||||||
The Scene 9 canvas is primary. It shows one lifecycle projection per beat. The
|
The Scene 9 canvas is primary. It shows one lifecycle projection per beat. The
|
||||||
floating trace is secondary and opens only from the receipt or `Agent trace`
|
conversation dock is secondary and remains anchored below it. There is no
|
||||||
control. Opening it never resizes or replaces the canvas.
|
separate `Agent trace` modal.
|
||||||
|
|
||||||
The trace panel uses the assistant-modal interaction model: anchored trigger,
|
|
||||||
focus moved into the panel, Escape/close returns focus to the trigger, and
|
|
||||||
reduced-motion removes transform-based entrance motion. It is not the generated
|
|
||||||
`assistant-modal.json` component because that component embeds the full runtime
|
|
||||||
Thread.
|
|
||||||
|
|
||||||
Each Scene 9 beat selects exactly one authoring phase:
|
Each Scene 9 beat selects exactly one authoring phase:
|
||||||
|
|
||||||
| Beat | Canvas projection | Expanded trace group |
|
| Beat | Canvas projection | Active dock group |
|
||||||
| --- | --- | --- |
|
| --- | --- | --- |
|
||||||
| `discover` | Required sources, capabilities, and input schema | Discover |
|
| `discover` | Required sources, capabilities, and input schema | Discover |
|
||||||
| `draft` | Draft graph with nodes and declared outcome routes | Draft |
|
| `draft` | Draft graph with nodes and declared outcome routes | Draft |
|
||||||
@@ -121,9 +109,17 @@ Each Scene 9 beat selects exactly one authoring phase:
|
|||||||
| `artifact` | Immutable artifact identifier and version | Compile artifact |
|
| `artifact` | Immutable artifact identifier and version | Compile artifact |
|
||||||
| `deployment` | Concrete local source bindings and deployment validation | Deploy and validate |
|
| `deployment` | Concrete local source bindings and deployment validation | Deploy and validate |
|
||||||
|
|
||||||
Other trace groups stay collapsed. The presenter can expand them manually, but
|
Other tool groups stay collapsed. The presenter can expand them manually, but
|
||||||
changing a group does not alter the active canvas phase.
|
changing a group does not alter the active canvas phase.
|
||||||
|
|
||||||
|
The five canvas projections use distinct factual visual forms:
|
||||||
|
|
||||||
|
- `discover`: source inventory plus capability and schema contract.
|
||||||
|
- `draft`: a compact directed graph with declared outcome routes.
|
||||||
|
- `validate`: diagnostic before/after repair with the corrected projection.
|
||||||
|
- `artifact`: immutable artifact identity, version, and required sources.
|
||||||
|
- `deployment`: logical-to-concrete source bindings and validation status.
|
||||||
|
|
||||||
## Prepared Authoring Recording
|
## Prepared Authoring Recording
|
||||||
|
|
||||||
Create a canonical, versioned recording separate from
|
Create a canonical, versioned recording separate from
|
||||||
@@ -142,12 +138,12 @@ The command sequence is:
|
|||||||
diagnostic, and the corrected binding/route operation produces a valid draft.
|
diagnostic, and the corrected binding/route operation produces a valid draft.
|
||||||
4. **Compile artifact**: `wf draft compile` and `wf artifact inspect` show the
|
4. **Compile artifact**: `wf draft compile` and `wf artifact inspect` show the
|
||||||
immutable versioned workflow definition.
|
immutable versioned workflow definition.
|
||||||
5. **Deploy and validate**: `wf deploy create` and `wf deploy validate` bind
|
5. **Deploy and validate**: `wf deploy save` and `wf deploy validate` bind
|
||||||
logical requirements to the local report, issue-board, and document sources.
|
logical requirements to the local report, issue-board, and document sources.
|
||||||
|
|
||||||
Command text must use the public `wf` surface and match the example's supported
|
Command text must use the public `wf` surface and match the example's supported
|
||||||
commands. Result text must stay short enough for the trace panel. Longer JSON
|
commands. Result text must stay short enough for the dock. Longer JSON or
|
||||||
or diagnostics are expandable, scroll-contained details rather than default
|
diagnostics are expandable, scroll-contained details rather than default
|
||||||
content.
|
content.
|
||||||
|
|
||||||
## Data Boundaries
|
## Data Boundaries
|
||||||
@@ -156,45 +152,42 @@ The recording owns the authoring facts. A pure projection function maps the
|
|||||||
selected phase to:
|
selected phase to:
|
||||||
|
|
||||||
- the Scene 9 lifecycle/canvas model;
|
- the Scene 9 lifecycle/canvas model;
|
||||||
- the corresponding command-group transcript;
|
- dock messages and active tool group;
|
||||||
- receipt text and status;
|
|
||||||
- the active Scene 9 beat.
|
- the active Scene 9 beat.
|
||||||
|
|
||||||
`PresentationRoute` remains the route owner. It maps a Scene 9 hash to a phase;
|
`PresentationRoute` remains the route owner. It maps a Scene 9 hash to a phase;
|
||||||
it must not create another chat state store or call the workflow RPC server.
|
it must not create another chat state store or call the workflow RPC server.
|
||||||
`AssistantOperatorThread` remains a renderer of projected messages. A dedicated
|
`AssistantOperatorThread` remains a renderer of projected messages. A small
|
||||||
floating-panel wrapper owns only open/close state and focus restoration.
|
presentation-owned wrapper controls only full-thread versus dock layout and the
|
||||||
|
active expanded tool group.
|
||||||
|
|
||||||
If the recording cannot decode, Scene 9 renders a compact unavailable state
|
If the recording cannot decode, Scene 9 renders a compact unavailable state
|
||||||
with the evidence pointer and does not invent authoring facts. The trace trigger
|
with the evidence pointer and does not invent authoring facts. The dock shows a
|
||||||
is disabled with an explanatory label.
|
single unavailable message rather than fabricated tool results.
|
||||||
|
|
||||||
## Accessibility And Responsive Rules
|
## Accessibility And Responsive Rules
|
||||||
|
|
||||||
- The receipt trigger is a semantic button with an accessible name that includes
|
|
||||||
`Agent trace`.
|
|
||||||
- Opening the panel focuses its heading or close control. Closing with Escape
|
|
||||||
or the close button restores focus to the receipt trigger.
|
|
||||||
- Tool groups are buttons with `aria-expanded`; their literal commands remain
|
- Tool groups are buttons with `aria-expanded`; their literal commands remain
|
||||||
copyable text.
|
copyable text.
|
||||||
- At 1280 by 720, the panel overlays the canvas at a readable maximum width and
|
- At 1280 by 720, the dock occupies no more than 30 percent of the stage. At
|
||||||
height. At 1024 by 768 and narrower, it becomes a bottom sheet or full-width
|
1024 by 768 and narrower, it remains full-width below the canvas with its own
|
||||||
inset without clipping its command list.
|
scroll containment.
|
||||||
- Canvas content may scroll inside its own region; the presentation viewport
|
- Canvas content may scroll inside its own region; the presentation viewport
|
||||||
must not acquire page-level scrollbars.
|
must not acquire page-level scrollbars.
|
||||||
- Motion is limited to opacity and short positional transitions. It honors
|
- Motion is limited to a 150–250 ms thread-container resize and canvas
|
||||||
|
crossfade. Do not blur, scale, or pan unchanged thread content. Motion honors
|
||||||
`prefers-reduced-motion` and the existing presentation motion toggle.
|
`prefers-reduced-motion` and the existing presentation motion toggle.
|
||||||
|
|
||||||
## Verification
|
## Verification
|
||||||
|
|
||||||
- Unit-test recording decoding and phase projection, including rejected/missing
|
- Unit-test recording decoding and phase projection, including rejected/missing
|
||||||
recording data.
|
recording data.
|
||||||
- Unit-test the trace panel's active-group and collapse behavior.
|
- Unit-test dock projection, active-group synchronization, and stable IDs.
|
||||||
- Component-test receipt trigger, focus restoration, Escape, and compact
|
- Component-test full-thread/dock layout, tool expansion, and compact
|
||||||
unavailable state.
|
unavailable state.
|
||||||
- Route-test all five Scene 9 hashes and Scene 8 to Scene 9 transition state.
|
- Route-test all five Scene 9 hashes and Scene 8 to Scene 9 transition state.
|
||||||
- Browser-smoke the full-screen Scene 8 thread, each Scene 9 phase, open/close
|
- Browser-smoke the full-screen Scene 8 thread and each synchronized Scene 9
|
||||||
trace panel, 1280 by 720, and 1024 by 768.
|
phase at 1280 by 720 and 1024 by 768.
|
||||||
- Run console tests, console typecheck, console build, and `git diff --check`.
|
- Run console tests, console typecheck, console build, and `git diff --check`.
|
||||||
|
|
||||||
## Follow-On Work
|
## Follow-On Work
|
||||||
|
|||||||
Reference in New Issue
Block a user