diff --git a/plugins/fusion-plugin-compound-engineering/src/dashboard/CeFlow.tsx b/plugins/fusion-plugin-compound-engineering/src/dashboard/CeFlow.tsx index 1b6085dc83..63af5f95b6 100644 --- a/plugins/fusion-plugin-compound-engineering/src/dashboard/CeFlow.tsx +++ b/plugins/fusion-plugin-compound-engineering/src/dashboard/CeFlow.tsx @@ -43,7 +43,6 @@ const BOTTOM_FOLLOW_THRESHOLD_PX = 50; type DisplayItem = | { kind: "chat"; role: "user" | "agent"; text: string } - | { kind: "qa-question"; question: PlanningQuestion } | { kind: "qa-answer"; question?: PlanningQuestion; response: unknown } | { kind: "activity"; turns: CeActivityTurn[] } | { kind: "complete" }; @@ -78,7 +77,6 @@ function parseHistory(history: CeConversationTurn[]): DisplayItem[] { const q = obj.question as PlanningQuestion | undefined; if (q && typeof q.id === "string" && typeof q.question === "string") { questionsById.set(q.id, q); - items.push({ kind: "qa-question", question: q }); continue; } const activity = obj.activity as { turns?: CeActivityTurn[] } | undefined; @@ -213,13 +211,6 @@ function Transcript({ history }: { history: CeConversationTurn[] }) { {item.text} ); - case "qa-question": - return ( -
  • - Agent asked - {item.question.question} -
  • - ); case "qa-answer": { const a = formatAnswer(item.response, item.question); return ( diff --git a/plugins/fusion-plugin-compound-engineering/src/dashboard/CompoundEngineeringView.css b/plugins/fusion-plugin-compound-engineering/src/dashboard/CompoundEngineeringView.css index db327222b0..1435b7f3eb 100644 --- a/plugins/fusion-plugin-compound-engineering/src/dashboard/CompoundEngineeringView.css +++ b/plugins/fusion-plugin-compound-engineering/src/dashboard/CompoundEngineeringView.css @@ -444,9 +444,6 @@ word-break: break-word; font-size: 0.86rem; } -.ce-flow-turn-question { - border-left: 3px solid var(--todo); -} .ce-flow-turn-answer.is-steering { border-left: 3px solid var(--color-warning); } diff --git a/plugins/fusion-plugin-compound-engineering/src/dashboard/__tests__/CeFlow.test.tsx b/plugins/fusion-plugin-compound-engineering/src/dashboard/__tests__/CeFlow.test.tsx index 6929026d39..ede600ce43 100644 --- a/plugins/fusion-plugin-compound-engineering/src/dashboard/__tests__/CeFlow.test.tsx +++ b/plugins/fusion-plugin-compound-engineering/src/dashboard/__tests__/CeFlow.test.tsx @@ -252,20 +252,32 @@ describe("CeFlow — Q&A transcript rendering", () => { ]; } - it("renders past questions and answers as bubbles, mapping option ids to labels", () => { + it("renders past answers as bubbles, mapping option ids to labels", () => { render( , ); - expect(screen.getByTestId("ce-flow-past-question")).toHaveTextContent("Which path?"); + expect(screen.queryByTestId("ce-flow-past-question")).not.toBeInTheDocument(); // The answer shows the LABEL, not the raw option id. expect(screen.getByTestId("ce-flow-past-answer")).toHaveTextContent("The Y path"); // The opening message renders as a plain user bubble. expect(screen.getByText("kick off")).toBeInTheDocument(); }); + it("hides structured question turns while preserving option-label lookup for answers", () => { + render( + , + ); + expect(screen.queryByTestId("ce-flow-past-question")).not.toBeInTheDocument(); + expect(screen.queryByText("Which path?")).not.toBeInTheDocument(); + expect(screen.getByTestId("ce-flow-past-answer")).toHaveTextContent("The Y path"); + }); + it("renders {value, comment} answers with the steering comment attached", () => { render(