docs: remove stale presentation numbering
This commit is contained in:
@@ -23,7 +23,7 @@ With `wf-rpc-server` running against `examples/lda_report_workflow/wf.config.jso
|
|||||||
and the presentation target set to `http://127.0.0.1:8765/rpc`, the rehearsal
|
and the presentation target set to `http://127.0.0.1:8765/rpc`, the rehearsal
|
||||||
path is:
|
path is:
|
||||||
|
|
||||||
1. Open Scene 8 at `#scene/agent-handoff/request`.
|
1. Open Scene 7 at `#scene/agent-handoff/request`.
|
||||||
2. Use the visible `Run prepared workflow` action.
|
2. Use the visible `Run prepared workflow` action.
|
||||||
3. Advance through the prepared lifecycle and run scenes to the typed approval.
|
3. Advance through the prepared lifecycle and run scenes to the typed approval.
|
||||||
4. Choose all issue rows or a deliberate subset, add a comment, and submit.
|
4. Choose all issue rows or a deliberate subset, add a comment, and submit.
|
||||||
|
|||||||
+1
-1
@@ -194,7 +194,7 @@ user, assistant, and Discover tool group. It is deterministic replay, not a live
|
|||||||
LLM chat, and does not start a workflow run. Scene 8 breaks the prepared
|
LLM chat, and does not start a workflow run. Scene 8 breaks the prepared
|
||||||
authoring into six beats with a persistent prepared-agent assistant pane on
|
authoring into six beats with a persistent prepared-agent assistant pane on
|
||||||
the left and a dominant phase canvas on the right. The adaptive split starts
|
the left and a dominant phase canvas on the right. The adaptive split starts
|
||||||
near 35/65 and keeps the matching prepared tool group synchronized with each
|
near 26/74 and keeps the matching prepared tool group synchronized with each
|
||||||
factual source, graph, repair, artifact, or deployment view. Neither scene calls
|
factual source, graph, repair, artifact, or deployment view. Neither scene calls
|
||||||
workflow authoring RPC operations — they consume deterministic prepared data. Scenes 9 through
|
workflow authoring RPC operations — they consume deterministic prepared data. Scenes 9 through
|
||||||
11 use the canonical replay by default when no live target is available. When
|
11 use the canonical replay by default when no live target is available. When
|
||||||
|
|||||||
@@ -377,7 +377,7 @@ describe("PresentationRoute", () => {
|
|||||||
expect(screen.getByRole("button", { name: /inspect evidence/i })).toBeInTheDocument();
|
expect(screen.getByRole("button", { name: /inspect evidence/i })).toBeInTheDocument();
|
||||||
});
|
});
|
||||||
|
|
||||||
it("renders the Scene 8 composer with one stable footer workflow action", async () => {
|
it("renders the Agent Request composer with one stable footer workflow action", async () => {
|
||||||
window.location.hash = "#scene/agent-handoff/request";
|
window.location.hash = "#scene/agent-handoff/request";
|
||||||
const { PresentationRoute } = await import("./PresentationRoute.js");
|
const { PresentationRoute } = await import("./PresentationRoute.js");
|
||||||
render(<PresentationRoute />);
|
render(<PresentationRoute />);
|
||||||
@@ -490,7 +490,7 @@ describe("PresentationRoute", () => {
|
|||||||
expect(screen.queryByText(/checking reachability/i)).not.toBeInTheDocument();
|
expect(screen.queryByText(/checking reachability/i)).not.toBeInTheDocument();
|
||||||
});
|
});
|
||||||
|
|
||||||
it("keeps Scene 8 local with a configured target", async () => {
|
it("keeps Agent Request local with a configured target", async () => {
|
||||||
window.sessionStorage.setItem("lda.workflowConsole.target", "http://127.0.0.1:8765/rpc");
|
window.sessionStorage.setItem("lda.workflowConsole.target", "http://127.0.0.1:8765/rpc");
|
||||||
window.location.hash = "#scene/agent-handoff/request";
|
window.location.hash = "#scene/agent-handoff/request";
|
||||||
mockedCallOperation.mockClear();
|
mockedCallOperation.mockClear();
|
||||||
@@ -706,7 +706,7 @@ describe("PresentationRoute", () => {
|
|||||||
expect(screen.queryByText("No trace frames captured.")).not.toBeInTheDocument();
|
expect(screen.queryByText("No trace frames captured.")).not.toBeInTheDocument();
|
||||||
});
|
});
|
||||||
|
|
||||||
it("navigates to Scene 8 request beat via hash", async () => {
|
it("navigates to Agent Request via hash", async () => {
|
||||||
window.location.hash = "#scene/agent-handoff/request";
|
window.location.hash = "#scene/agent-handoff/request";
|
||||||
const { PresentationRoute } = await import("./PresentationRoute.js");
|
const { PresentationRoute } = await import("./PresentationRoute.js");
|
||||||
render(<PresentationRoute />);
|
render(<PresentationRoute />);
|
||||||
@@ -724,7 +724,7 @@ describe("PresentationRoute", () => {
|
|||||||
"#scene/prepared-lifecycle/repair",
|
"#scene/prepared-lifecycle/repair",
|
||||||
"#scene/prepared-lifecycle/artifact",
|
"#scene/prepared-lifecycle/artifact",
|
||||||
"#scene/prepared-lifecycle/deployment",
|
"#scene/prepared-lifecycle/deployment",
|
||||||
])("navigates to Scene 9 beat %s", async (hash) => {
|
])("navigates to prepared lifecycle beat %s", async (hash) => {
|
||||||
window.location.hash = hash;
|
window.location.hash = hash;
|
||||||
const { PresentationRoute } = await import("./PresentationRoute.js");
|
const { PresentationRoute } = await import("./PresentationRoute.js");
|
||||||
render(<PresentationRoute />);
|
render(<PresentationRoute />);
|
||||||
@@ -732,7 +732,7 @@ describe("PresentationRoute", () => {
|
|||||||
expect(await screen.findByLabelText("prepared authoring lifecycle")).toBeInTheDocument();
|
expect(await screen.findByLabelText("prepared authoring lifecycle")).toBeInTheDocument();
|
||||||
});
|
});
|
||||||
|
|
||||||
it("navigating Scene 9 beats does not call workflow authoring RPC operations", async () => {
|
it("navigating prepared lifecycle beats does not call workflow authoring RPC operations", async () => {
|
||||||
const { callOperation } = await import("../connection/api.js");
|
const { callOperation } = await import("../connection/api.js");
|
||||||
const mockCallOp = vi.mocked(callOperation);
|
const mockCallOp = vi.mocked(callOperation);
|
||||||
mockCallOp.mockClear();
|
mockCallOp.mockClear();
|
||||||
|
|||||||
@@ -494,19 +494,19 @@ describe("SceneBody", () => {
|
|||||||
expect(openDiscussion).toHaveBeenCalledWith("where-is-ai-agent");
|
expect(openDiscussion).toHaveBeenCalledWith("where-is-ai-agent");
|
||||||
});
|
});
|
||||||
|
|
||||||
it("renders Scene 9 discover beat with prepared authoring phases", () => {
|
it("renders the prepared lifecycle discover beat with authoring phases", () => {
|
||||||
renderSceneBodyAtMainLocation("prepared-lifecycle", "discover");
|
renderSceneBodyAtMainLocation("prepared-lifecycle", "discover");
|
||||||
expect(screen.getByLabelText("prepared authoring lifecycle")).toBeInTheDocument();
|
expect(screen.getByLabelText("prepared authoring lifecycle")).toBeInTheDocument();
|
||||||
expect(screen.getAllByText("Discover").length).toBeGreaterThanOrEqual(1);
|
expect(screen.getAllByText("Discover").length).toBeGreaterThanOrEqual(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
it("renders Scene 9 artifact beat with compiled artifact evidence", () => {
|
it("renders the prepared lifecycle artifact beat with compiled evidence", () => {
|
||||||
renderSceneBodyAtMainLocation("prepared-lifecycle", "artifact");
|
renderSceneBodyAtMainLocation("prepared-lifecycle", "artifact");
|
||||||
expect(screen.getAllByText("Artifact").length).toBeGreaterThanOrEqual(1);
|
expect(screen.getAllByText("Artifact").length).toBeGreaterThanOrEqual(1);
|
||||||
expect(screen.getAllByText(/lda_report_case_study/i).length).toBeGreaterThanOrEqual(1);
|
expect(screen.getAllByText(/lda_report_case_study/i).length).toBeGreaterThanOrEqual(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
it("renders Scene 8 as the request entry beat", () => {
|
it("renders Agent Request as the request entry beat", () => {
|
||||||
renderSceneBodyAtMainLocation("agent-handoff", "request");
|
renderSceneBodyAtMainLocation("agent-handoff", "request");
|
||||||
|
|
||||||
expect(screen.getByRole("textbox", { name: /authoring request/i })).toBeInTheDocument();
|
expect(screen.getByRole("textbox", { name: /authoring request/i })).toBeInTheDocument();
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ type Scene8ChatEntryProps = {
|
|||||||
readonly dispatch: (action: Scene8EntryAction) => void;
|
readonly dispatch: (action: Scene8EntryAction) => void;
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Scene 8's deterministic request surface; submission reveals prepared data locally. */
|
/** Deterministic agent-request surface; submission reveals prepared data locally. */
|
||||||
export const Scene8ChatEntry = ({ state, dispatch }: Scene8ChatEntryProps) => {
|
export const Scene8ChatEntry = ({ state, dispatch }: Scene8ChatEntryProps) => {
|
||||||
const submitted = state.phase === "submitted";
|
const submitted = state.phase === "submitted";
|
||||||
const canSubmit = canSubmitScene8Entry(state);
|
const canSubmit = canSubmitScene8Entry(state);
|
||||||
|
|||||||
@@ -284,7 +284,7 @@ export const AssistantOperatorThread = ({
|
|||||||
}
|
}
|
||||||
if (!activeToolGroupId) return;
|
if (!activeToolGroupId) return;
|
||||||
|
|
||||||
// The same transcript can be much taller than the Scene 9 dock. Keep the
|
// The same transcript can be much taller than the prepared assistant pane. Keep the
|
||||||
// beat-owned group visible without maintaining a second scroll-state model.
|
// beat-owned group visible without maintaining a second scroll-state model.
|
||||||
const activeGroup = viewport
|
const activeGroup = viewport
|
||||||
?.querySelector<HTMLElement>(`[data-tool-group-id="${activeToolGroupId}"]`);
|
?.querySelector<HTMLElement>(`[data-tool-group-id="${activeToolGroupId}"]`);
|
||||||
|
|||||||
@@ -3236,7 +3236,7 @@
|
|||||||
/* Responsive grid behavior lives in demo-workflow.css container query */
|
/* Responsive grid behavior lives in demo-workflow.css container query */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
Scene 8 — Agent handoff full-screen transcript.
|
Agent handoff — full-screen transcript.
|
||||||
Gives the full-screen conversation a readable stage with consistent spacing.
|
Gives the full-screen conversation a readable stage with consistent spacing.
|
||||||
Only the stage wrapper may fade/translate; Thread internals are not morphed.
|
Only the stage wrapper may fade/translate; Thread internals are not morphed.
|
||||||
*/
|
*/
|
||||||
@@ -3384,7 +3384,7 @@
|
|||||||
color: var(--authoring-paper, var(--stage-canvas));
|
color: var(--authoring-paper, var(--stage-canvas));
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Scene 8 keeps the prepared thread intact but gives it an editorial reading surface. */
|
/* Agent Request keeps the prepared thread intact but gives it an editorial reading surface. */
|
||||||
.agent-handoff-scene[data-presentation-surface="editorial"] {
|
.agent-handoff-scene[data-presentation-surface="editorial"] {
|
||||||
--authoring-paper: var(--color-editorial-paper, oklch(0.975 0.012 82));
|
--authoring-paper: var(--color-editorial-paper, oklch(0.975 0.012 82));
|
||||||
--authoring-ink: var(--color-editorial-ink, oklch(0.19 0.015 65));
|
--authoring-ink: var(--color-editorial-ink, oklch(0.19 0.015 65));
|
||||||
@@ -3438,7 +3438,7 @@
|
|||||||
color: var(--authoring-accent);
|
color: var(--authoring-accent);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Keep the compact Scene 8 request surface centered inside the presentation canvas. */
|
/* Keep the compact Agent Request surface centered inside the presentation canvas. */
|
||||||
@media (max-width: 1100px) {
|
@media (max-width: 1100px) {
|
||||||
.presentation-stage[data-scene-view="agent"] .presentation-stage__primary {
|
.presentation-stage[data-scene-view="agent"] .presentation-stage__primary {
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|||||||
Reference in New Issue
Block a user