diff --git a/apps/desktop/src/renderer/components/terminals/SessionCard.test.tsx b/apps/desktop/src/renderer/components/terminals/SessionCard.test.tsx index 9d8ecae77..4a137db34 100644 --- a/apps/desktop/src/renderer/components/terminals/SessionCard.test.tsx +++ b/apps/desktop/src/renderer/components/terminals/SessionCard.test.tsx @@ -106,6 +106,25 @@ function row(container: HTMLElement): HTMLElement { } describe("SessionCard orchestration identity", () => { + it("shows grid membership immediately left of the status", () => { + const { container } = render( + , + ); + + const indicator = screen.getByRole("img", { name: "In the active grid" }); + const status = container.querySelector("[data-session-status-slot]"); + expect(indicator).toBeTruthy(); + expect(status).toBeTruthy(); + expect(indicator.nextElementSibling).toBe(status); + }); + it("names the row with its orchestration role for assistive tech", () => { const { container } = render( ); + const gridIndicator = gridBadge ? ( + + + + ) : null; /* COMPACT ROWS ONLY. The full row carries lineage on line 1 now, and two lineage indicators on one row is exactly the duplication this pass removes. @@ -920,6 +936,7 @@ export const SessionCard = React.memo(function SessionCard({ {titleNode} {compactLineageGlyph} + {gridIndicator} {statusSlot} ) : ( @@ -935,6 +952,7 @@ export const SessionCard = React.memo(function SessionCard({ {part} ))} + {gridIndicator} {statusSlot}