feat(maestro): web spawn form stops naming sessions
The name field starts empty and the reroll is gone; the worktree branch keeps a default by borrowing one handle from /api/names. A card whose name the daemon generated renders dimmed until a first prompt settles it. Refs #131
This commit is contained in:
@@ -246,6 +246,34 @@ describe("session cards (#107)", () => {
|
||||
expect(line2?.querySelector(".activity-duration")?.textContent).toBe("4m");
|
||||
});
|
||||
|
||||
it("dims a name the daemon generated, until it settles (#131)", () => {
|
||||
const generated = session({
|
||||
id: "aaaaaaaa-0000-0000-0000-0000000000a1",
|
||||
metadata: { name: "amber-falcon", name_source: "Generated" },
|
||||
});
|
||||
const haiku = session({
|
||||
id: "aaaaaaaa-0000-0000-0000-0000000000a2",
|
||||
metadata: { name: "sidebar-rail", name_source: "Haiku" },
|
||||
});
|
||||
const chosen = session({
|
||||
id: "aaaaaaaa-0000-0000-0000-0000000000a3",
|
||||
metadata: { name: "my-session", name_source: "User" },
|
||||
});
|
||||
// Named before `name_source` existed: settled, never dimmed.
|
||||
const legacy = session({
|
||||
id: "aaaaaaaa-0000-0000-0000-0000000000a4",
|
||||
metadata: { name: "older-session" },
|
||||
});
|
||||
|
||||
const el = renderSidebar(storeWith([generated, haiku, chosen, legacy])).el;
|
||||
const provisional = (s: Session) =>
|
||||
rowFor(el, s.id)?.querySelector(".leaf-name")?.classList.contains("is-provisional");
|
||||
expect(provisional(generated)).toBe(true);
|
||||
expect(provisional(haiku)).toBe(false);
|
||||
expect(provisional(chosen)).toBe(false);
|
||||
expect(provisional(legacy)).toBe(false);
|
||||
});
|
||||
|
||||
it("renders the command as its tool icon when the tool is known", () => {
|
||||
const s = session({
|
||||
id: "aaaaaaaa-0000-0000-0000-00000000001b",
|
||||
|
||||
Reference in New Issue
Block a user