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}