ftown 0.27.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/dist/command-rpc.d.ts +11 -0
  2. package/dist/command-rpc.js +79 -15
  3. package/dist/command-rpc.js.map +1 -1
  4. package/dist/coordination/board.js +82 -3
  5. package/dist/coordination/board.js.map +1 -1
  6. package/dist/coordination/contract-c.d.ts +117 -0
  7. package/dist/coordination/contract-c.js +47 -0
  8. package/dist/coordination/contract-c.js.map +1 -0
  9. package/dist/coordination/contract.d.ts +8 -1
  10. package/dist/coordination/contract.js +1 -1
  11. package/dist/coordination/contract.js.map +1 -1
  12. package/dist/coordination/format.js +37 -11
  13. package/dist/coordination/format.js.map +1 -1
  14. package/dist/coordination/plan.d.ts +74 -0
  15. package/dist/coordination/plan.js +534 -0
  16. package/dist/coordination/plan.js.map +1 -0
  17. package/dist/coordination/routes-plan.d.ts +13 -0
  18. package/dist/coordination/routes-plan.js +182 -0
  19. package/dist/coordination/routes-plan.js.map +1 -0
  20. package/dist/coordination/wiring.d.ts +6 -0
  21. package/dist/coordination/wiring.js +50 -2
  22. package/dist/coordination/wiring.js.map +1 -1
  23. package/dist/coordination-cli.d.ts +6 -1
  24. package/dist/coordination-cli.js +17 -7
  25. package/dist/coordination-cli.js.map +1 -1
  26. package/dist/create-ftown-session.d.ts +18 -0
  27. package/dist/create-ftown-session.js +44 -0
  28. package/dist/create-ftown-session.js.map +1 -1
  29. package/dist/ftown-cli.js +5 -2
  30. package/dist/ftown-cli.js.map +1 -1
  31. package/dist/index.js +25 -0
  32. package/dist/index.js.map +1 -1
  33. package/dist/local-api-server.js +14 -4
  34. package/dist/local-api-server.js.map +1 -1
  35. package/dist/plan-cli.d.ts +52 -0
  36. package/dist/plan-cli.js +357 -0
  37. package/dist/plan-cli.js.map +1 -0
  38. package/dist/security/bridge/permissions.js +21 -1
  39. package/dist/security/bridge/permissions.js.map +1 -1
  40. package/dist/sessions-commands.js +10 -0
  41. package/dist/sessions-commands.js.map +1 -1
  42. package/dist/types.d.ts +4 -1
  43. package/package.json +2 -2
  44. package/skills/ftown/SKILL.md +42 -0
  45. package/skills/ftown/references/orchestrator.md +29 -25
  46. package/skills/ftown/references/sessions.md +64 -4
@@ -2,6 +2,9 @@ import type { VerifiedApplication } from './security/protocol.js';
2
2
  import type { BridgeSecurityService } from './security/bridge/security.js';
3
3
  import type { PullRequestStatusService } from './pull-request-status.js';
4
4
  import type { PrReviewService } from './pull-request-review-protocol.js';
5
+ import { type BoardSnapshot } from './coordination/contract-c.js';
6
+ import type { BoardQuery, TreeEventLogApi } from './coordination/contract.js';
7
+ import type { AttentionItem } from './attention-events.js';
5
8
  import type { SessionController } from './session-controller.js';
6
9
  import type { Session } from './types.js';
7
10
  import { type AttentionStore } from './attention-store.js';
@@ -37,8 +40,16 @@ export interface CommandRpcDeps {
37
40
  updateEffects?: UpdateEffects;
38
41
  /** The bridge's long-lived model-routing service (get_model_routing / set_model_routing); resolved only when one of those commands runs. */
39
42
  modelRouting?: () => ModelRoutingService;
43
+ /** Read-only board snapshot for `get_session_board`. Absent → unavailable. */
44
+ sessionBoard?: SessionBoardSource;
40
45
  publishCommandResponse: (response: CommandResponse, verified?: VerifiedApplication) => Promise<void>;
41
46
  }
47
+ /** Reads used to build a BoardSnapshot. Must not mutate sessions, plans, or attention. */
48
+ export interface SessionBoardSource {
49
+ board(query: BoardQuery): Promise<BoardSnapshot['board']>;
50
+ events: Pick<TreeEventLogApi, 'head' | 'read'>;
51
+ openAttention(sessionId: string): Promise<AttentionItem[]>;
52
+ }
42
53
  /**
43
54
  * Centrifugo commands:rpc adapter: a thin wire-marshaling switch around the
44
55
  * transport-agnostic session controller. Commands addressed to another
@@ -8,8 +8,9 @@ import { promisify } from 'node:util';
8
8
  import { prReviewGeneration, toWireSession } from './session-wire.js';
9
9
  import { normalizePullRequestUrl } from './pull-request-url.js';
10
10
  import { PR_REVIEW_CHUNK_BYTES } from './pull-request-review-protocol.js';
11
- import { WorkingDirMissingError } from './create-ftown-session.js';
11
+ import { PlanItemError, WorkingDirMissingError } from './create-ftown-session.js';
12
12
  import { WorktreeError } from './coordination/contract-b.js';
13
+ import { BOARD_SNAPSHOT_EVENTS } from './coordination/contract-c.js';
13
14
  import { AUTOMATION_REMOVED_CODE, AUTOMATION_REMOVED_MESSAGE, AutomationRemovedError, RETIRED_AUTOMATION_COMMANDS } from './retired-automation.js';
14
15
  import { AttentionError } from './attention-store.js';
15
16
  import { formatAttentionAnswerMail } from './attention-prompt.js';
@@ -30,6 +31,62 @@ function auditBridgeExec(payload) {
30
31
  // Auditing is best-effort and must never block execution.
31
32
  }
32
33
  }
34
+ const PLAN_ITEM_ID = /^p\d{1,6}$/;
35
+ function planItemFromPayload(payload) {
36
+ return typeof payload.planItem === 'string' && PLAN_ITEM_ID.test(payload.planItem) ? payload.planItem : undefined;
37
+ }
38
+ async function newestRootEvents(events, rootId) {
39
+ const head = await events.head(rootId);
40
+ if (head <= 0)
41
+ return [];
42
+ const since = Math.max(0, head - Math.max(BOARD_SNAPSHOT_EVENTS, 500));
43
+ const page = await events.read(rootId, { since, limit: 500 });
44
+ return page.events.slice(-BOARD_SNAPSHOT_EVENTS);
45
+ }
46
+ async function handleGetSessionBoard(deps, command, verified) {
47
+ const payload = command.payload;
48
+ if (!payload || typeof payload !== 'object' || Array.isArray(payload)
49
+ || payload.bridgeId !== deps.bridgeId
50
+ || typeof payload.sessionId !== 'string'
51
+ || !/^[A-Za-z0-9_-]+$/.test(payload.sessionId)
52
+ || Object.keys(payload).some((key) => key !== 'bridgeId' && key !== 'sessionId')) {
53
+ throw new Error('Invalid board request');
54
+ }
55
+ if (deps.security && verified) {
56
+ await deps.security.policy.revalidate(verified.principal, 'read');
57
+ }
58
+ if (!deps.sessionBoard) {
59
+ return {
60
+ requestId: command.requestId,
61
+ success: false,
62
+ error: 'Board is not available on this bridge',
63
+ data: { code: 'unavailable' },
64
+ };
65
+ }
66
+ const session = await deps.sessionController.get(payload.sessionId);
67
+ if (!session || session.bridgeId !== deps.bridgeId)
68
+ throw new Error('Unknown session');
69
+ const board = await deps.sessionBoard.board({ sessionId: payload.sessionId, all: true });
70
+ const events = await newestRootEvents(deps.sessionBoard.events, board.rootId);
71
+ const attention = [];
72
+ for (const card of board.cards) {
73
+ if (card.archived)
74
+ continue;
75
+ try {
76
+ const items = await deps.sessionBoard.openAttention(card.sessionId);
77
+ for (const event of items) {
78
+ if (event.resolvedAt)
79
+ continue;
80
+ attention.push({ sessionId: card.sessionId, event });
81
+ }
82
+ }
83
+ catch (error) {
84
+ console.warn('[Bridge] Could not read child attention for board snapshot:', error instanceof Error ? error.message : error);
85
+ }
86
+ }
87
+ const snapshot = { board, events, attention };
88
+ return { requestId: command.requestId, success: true, data: snapshot };
89
+ }
33
90
  /**
34
91
  * Centrifugo commands:rpc adapter: a thin wire-marshaling switch around the
35
92
  * transport-agnostic session controller. Commands addressed to another
@@ -53,6 +110,10 @@ export function createCommandHandler(deps) {
53
110
  if (deps.security && verified)
54
111
  await deps.security.revalidate(verified.principal);
55
112
  switch (command.type) {
113
+ case 'get_session_board': {
114
+ response = await handleGetSessionBoard(deps, command, verified);
115
+ break;
116
+ }
56
117
  case 'preview_chat_list':
57
118
  case 'preview_chat_send':
58
119
  case 'preview_chat_reply': {
@@ -388,6 +449,7 @@ export function createCommandHandler(deps) {
388
449
  initialInputDelay: payload.initialInputDelay,
389
450
  suppressBriefing: payload.suppressBriefing,
390
451
  createMissingWorkingDir: payload.createMissingWorkingDir,
452
+ planItem: planItemFromPayload(payload),
391
453
  });
392
454
  response = { requestId: command.requestId, success: true, data: { session: toWireSession(session) } };
393
455
  break;
@@ -556,20 +618,22 @@ export function createCommandHandler(deps) {
556
618
  ? { requestId: command.requestId, success: false, error: AUTOMATION_REMOVED_MESSAGE, data: { code: AUTOMATION_REMOVED_CODE } }
557
619
  : err instanceof WorktreeError
558
620
  ? { requestId: command.requestId, success: false, error: errorMessage, data: { code: err.code } }
559
- : err instanceof BridgeSecurityError
560
- ? { requestId: command.requestId, success: false, error: err.message, data: { code: err.code } }
561
- : err instanceof WorkingDirMissingError
562
- ? {
563
- requestId: command.requestId,
564
- success: false,
565
- error: errorMessage,
566
- data: {
567
- code: err.code,
568
- workingDir: err.workingDir,
569
- canCreate: true,
570
- },
571
- }
572
- : { requestId: command.requestId, success: false, error: errorMessage };
621
+ : err instanceof PlanItemError
622
+ ? { requestId: command.requestId, success: false, error: errorMessage }
623
+ : err instanceof BridgeSecurityError
624
+ ? { requestId: command.requestId, success: false, error: err.message, data: { code: err.code } }
625
+ : err instanceof WorkingDirMissingError
626
+ ? {
627
+ requestId: command.requestId,
628
+ success: false,
629
+ error: errorMessage,
630
+ data: {
631
+ code: err.code,
632
+ workingDir: err.workingDir,
633
+ canCreate: true,
634
+ },
635
+ }
636
+ : { requestId: command.requestId, success: false, error: errorMessage };
573
637
  }
574
638
  try {
575
639
  await deps.publishCommandResponse(response, verified);
@@ -1 +1 @@
1
- {"version":3,"file":"command-rpc.js","sourceRoot":"","sources":["../src/command-rpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command-rpc.js","sourceRoot":"","sources":["../src/command-rpc.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
1
  import { CARD_STATES, CARD_STALE_MS, DIGEST_MAX, } from './contract.js';
2
+ import { orderPlan } from './plan.js';
2
3
  import { formatLocalHHMM } from './format.js';
4
+ /** Archived children included by board({ all: true }), newest first. */
5
+ const ARCHIVED_CHILD_CAP = 50;
3
6
  function emptyRollup() {
4
7
  const rollup = {
5
8
  working: 0,
@@ -37,6 +40,61 @@ async function readAllEventsSince(deps, rootId, since) {
37
40
  }
38
41
  return { events: all, cursor };
39
42
  }
43
+ function archivedTime(session) {
44
+ const removedAt = session.removedAt;
45
+ return typeof removedAt === 'string' ? removedAt : '';
46
+ }
47
+ /** Newest archived time first. Valid timestamps beat missing ones; id breaks ties. */
48
+ function compareArchivedNewestFirst(a, b) {
49
+ const aTime = archivedTime(a);
50
+ const bTime = archivedTime(b);
51
+ const ta = Date.parse(aTime);
52
+ const tb = Date.parse(bTime);
53
+ const aOk = aTime !== '' && !Number.isNaN(ta);
54
+ const bOk = bTime !== '' && !Number.isNaN(tb);
55
+ if (aOk && bOk && ta !== tb)
56
+ return tb - ta;
57
+ if (aOk !== bOk)
58
+ return aOk ? -1 : 1;
59
+ return a.id.localeCompare(b.id);
60
+ }
61
+ function selectArchivedChildren(archived, rootId, liveIds) {
62
+ const newestById = new Map();
63
+ for (const session of archived) {
64
+ if (session.id === rootId || session.parentSessionId !== rootId)
65
+ continue;
66
+ if (liveIds.has(session.id))
67
+ continue;
68
+ const prev = newestById.get(session.id);
69
+ if (!prev || compareArchivedNewestFirst(session, prev) <= 0) {
70
+ newestById.set(session.id, session);
71
+ }
72
+ }
73
+ return Array.from(newestById.values())
74
+ .sort(compareArchivedNewestFirst)
75
+ .slice(0, ARCHIVED_CHILD_CAP);
76
+ }
77
+ function buildArchivedCard(session) {
78
+ const previews = session.preview ? session.preview.files.map((f) => f.fileName) : [];
79
+ const derived = {
80
+ status: session.status,
81
+ activity: 'unknown',
82
+ openAttention: 0,
83
+ unreadMail: 0,
84
+ previews,
85
+ ...(session.shellType !== undefined ? { shellType: session.shellType } : {}),
86
+ ...(session.model !== undefined ? { model: session.model } : {}),
87
+ };
88
+ return {
89
+ archived: true,
90
+ sessionId: session.id,
91
+ name: session.name,
92
+ ...(session.parentSessionId !== undefined ? { parentSessionId: session.parentSessionId } : {}),
93
+ declared: session.card ?? null,
94
+ derived,
95
+ stale: false,
96
+ };
97
+ }
40
98
  export class BoardService {
41
99
  deps;
42
100
  constructor(deps) {
@@ -118,17 +176,22 @@ export class BoardService {
118
176
  throw new Error('Session not found');
119
177
  }
120
178
  const rootId = session.parentSessionId ?? session.id;
121
- const [allSessions, cursor, eventsPage] = await Promise.all([
179
+ const listArchived = this.deps.listArchived;
180
+ const [allSessions, cursor, eventsPage, archivedSessions, rootSession] = await Promise.all([
122
181
  this.deps.listSessions(),
123
182
  this.deps.events.head(rootId),
124
183
  query.since !== undefined
125
184
  ? readAllEventsSince(this.deps, rootId, query.since)
126
185
  : Promise.resolve(null),
186
+ query.all && listArchived ? listArchived() : Promise.resolve([]),
187
+ session.id === rootId ? Promise.resolve(session) : this.deps.loadSession(rootId),
127
188
  ]);
128
189
  const sinceSessionIds = eventsPage
129
190
  ? new Set(eventsPage.events.map((e) => e.sessionId))
130
191
  : null;
131
- let children = allSessions.filter((s) => s.parentSessionId === rootId && s.id !== rootId);
192
+ const liveChildren = allSessions.filter((s) => s.parentSessionId === rootId && s.id !== rootId);
193
+ const liveIds = new Set(liveChildren.map((s) => s.id));
194
+ let children = liveChildren;
132
195
  if (!query.all) {
133
196
  children = children.filter((s) => s.status === 'running' ||
134
197
  s.status === 'pending' ||
@@ -145,20 +208,36 @@ export class BoardService {
145
208
  }
146
209
  return a.createdAt.localeCompare(b.createdAt);
147
210
  });
148
- let cards = await Promise.all(children.map((c) => this.buildCardForSession(c)));
211
+ let archivedChildren = [];
212
+ if (query.all) {
213
+ archivedChildren = selectArchivedChildren(archivedSessions, rootId, liveIds);
214
+ if (sinceSessionIds !== null) {
215
+ archivedChildren = archivedChildren.filter((s) => sinceSessionIds.has(s.id));
216
+ }
217
+ }
218
+ let cards = [
219
+ ...(await Promise.all(children.map((c) => this.buildCardForSession(c)))),
220
+ ...archivedChildren.map((c) => buildArchivedCard(c)),
221
+ ];
149
222
  if (query.ready) {
150
223
  cards = cards.filter((c) => c.derived.pr?.state === 'passed' && c.declared?.state !== 'done');
151
224
  }
225
+ // Rollup counts live work. Archived children stay on the board under --all
226
+ // (suffixed "(retired)") and do not add to a state bucket.
152
227
  const rollup = emptyRollup();
153
228
  for (const c of cards) {
229
+ if (c.archived)
230
+ continue;
154
231
  const key = c.declared?.state ?? 'unset';
155
232
  rollup[key] += 1;
156
233
  }
234
+ const plan = rootSession?.plan ? orderPlan(rootSession.plan.items) : undefined;
157
235
  return {
158
236
  rootId,
159
237
  cursor,
160
238
  cards,
161
239
  rollup,
240
+ ...(plan !== undefined ? { plan } : {}),
162
241
  };
163
242
  }
164
243
  async digest(sessionId, sinceSeq) {
@@ -1 +1 @@
1
- {"version":3,"file":"board.js","sourceRoot":"","sources":["../../src/coordination/board.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"board.js","sourceRoot":"","sources":["../../src/coordination/board.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * FROZEN CONTRACT — coordination phase C: plan list (todo with precedence), retired
3
+ * history on the board, removed/plan tree events, dashboard board snapshot RPC, board v3
4
+ * Overview. Types/constants/interfaces only. Implementers must not modify this file.
5
+ */
6
+ import type { Board, SessionCard, TreeEvent } from './contract.js';
7
+ import type { AttentionItem } from '../attention-events.js';
8
+ export declare const PLAN_LIMITS: {
9
+ readonly items: 200;
10
+ readonly title: 140;
11
+ readonly note: 500;
12
+ readonly after: 20;
13
+ };
14
+ export declare const PLAN_STATES: readonly ["todo", "started", "done", "dropped"];
15
+ export type PlanState = typeof PLAN_STATES[number];
16
+ export type PlanPriority = 1 | 2 | 3;
17
+ export interface PlanItem {
18
+ id: string;
19
+ title: string;
20
+ note?: string;
21
+ after: string[];
22
+ priority: PlanPriority;
23
+ state: PlanState;
24
+ sessionId?: string;
25
+ createdAt: string;
26
+ updatedAt: string;
27
+ }
28
+ /** Stored on the PARENT session: Session.plan (session.json) → flows to dashboard via toWireSession. */
29
+ export interface SessionPlan {
30
+ items: PlanItem[];
31
+ seq: number;
32
+ }
33
+ /**
34
+ * Derived ordering (pure helper `orderPlan(items)` in bridge/src/coordination/plan.ts, also re-implemented
35
+ * identically in the UI — see PLAN_ORDER_RULE):
36
+ * ready = state 'todo' && every `after` item is 'done' or 'dropped'
37
+ * waiting = state 'todo' && not ready
38
+ * Order: ready (priority asc, createdAt asc), then waiting (same), then started (updatedAt asc),
39
+ * then done (updatedAt desc), then dropped (updatedAt desc).
40
+ */
41
+ export declare const PLAN_ORDER_RULE: "ready>waiting>started>done>dropped; within ready/waiting: priority asc, createdAt asc";
42
+ export interface PlanView {
43
+ items: PlanItem[];
44
+ ready: string[];
45
+ }
46
+ /** Routes (via dispatchSecure; :id = parent session). Caller: local-cli principal; any session may edit the plan of :id (owner-only enforcement is out of scope). */
47
+ export declare const PLAN_ROUTES: {
48
+ /** GET → PlanView; POST body { title, note?, after?, priority? } → { item } */
49
+ readonly plan: "/api/sessions/:id/plan";
50
+ /** PATCH body { title?, note?: string|null, after?, priority?, state?, sessionId?: string|null } → { item }; DELETE → { ok: true } (removes id from others' `after`) */
51
+ readonly item: "/api/sessions/:id/plan/:itemId";
52
+ };
53
+ export declare class PlanValidationError extends Error {
54
+ constructor(message: string);
55
+ }
56
+ /**
57
+ * Automatic transitions (bridge wiring):
58
+ * - `ftown sessions create --parent --plan-item <id>`: after the child exists, item.state = 'started', item.sessionId = child.id.
59
+ * Unknown/non-todo item → create fails 400 BEFORE the session is created.
60
+ * - When a child's declared card becomes 'done' and an item of its parent has sessionId === child.id and state 'started' → 'done'.
61
+ * 'failed' card → item back to 'todo' with sessionId cleared? NO: leave 'started' (manager decides).
62
+ * - Every plan change emits ONE tree event kind 'plan' on the parent's log with summary
63
+ * `<id> <state>: <title>` ; when items become ready because of it, append ` → ready: <id>, <id>`.
64
+ *
65
+ * CLI (bridge/src/plan-cli.ts, group `ftown plan`, default session = FTOWN_SESSION_ID = the manager):
66
+ * ftown plan [--json] [--session-id <id>] list in order: `<mark> <id> [P<prio>] <title> (after p1,p2 | → <child name>)`
67
+ * marks: `→` ready, `·` waiting, `▸` started, `✓` done, `✗` dropped
68
+ * ftown plan add <title...> [--note <t>] [--after <id,id>] [--priority 1|2|3]
69
+ * ftown plan start <id> --session <child-id>
70
+ * ftown plan done <id> | drop <id> | todo <id>
71
+ * ftown plan edit <id> [--title <t>] [--note <t>|--no-note] [--after <ids>|--no-after] [--priority n]
72
+ * ftown plan rm <id>
73
+ * ftown sessions create --parent --plan-item <id> ... (in sessions-commands.ts)
74
+ * Exit codes: 0 ok, 1 error, 2 usage.
75
+ */
76
+ /** Added to TREE_EVENT_KINDS in contract.ts (phase C edit): 'plan' and 'removed'. */
77
+ export declare const PHASE_C_EVENT_KINDS: readonly ["plan", "removed"];
78
+ /** 'removed': emitted when a child session is removed/archived while not already exited; summary `removed`. */
79
+ /** SessionCard gains (in contract.ts, phase C edit): `archived?: boolean`. Board gains `plan?: PlanView`. */
80
+ export interface BoardPhaseCFields {
81
+ archived?: boolean;
82
+ }
83
+ /**
84
+ * BoardService (phase C):
85
+ * - BoardDeps gains `listArchived(): Promise<Session[]>` (archive store records).
86
+ * - board({ all: true }) includes archived children (archived: true, derived.status as recorded, activity 'unknown'),
87
+ * ordered after live children by archived time desc, capped at 50 most recent.
88
+ * - Board.plan = the parent's PlanView when the root has a plan (always included).
89
+ * - Plain `ftown board`: after child rows, a `planned` section: up to 5 ready items `→ <id> <title>` then `+N more`.
90
+ *
91
+ * `ftown board --wait --until any-done|any-blocked|any-ready` (phase C fix): the condition must hold for a child
92
+ * whose tree events arrived AFTER the starting cursor (any-done: a changed child is now done, etc.).
93
+ * `all-done` stays global. `any-change` unchanged.
94
+ */
95
+ /** command-rpc command `get_session_board`, payload { bridgeId, sessionId } → BoardSnapshot. Read-only. */
96
+ export interface BoardSnapshot {
97
+ board: Board;
98
+ events: TreeEvent[];
99
+ attention: Array<{
100
+ sessionId: string;
101
+ event: AttentionItem;
102
+ }>;
103
+ }
104
+ export declare const BOARD_SNAPSHOT_EVENTS = 50;
105
+ /**
106
+ * UI (board v3 Overview, see .ftown-previews/board-v3-notes.md in the phase B worktree — copied to
107
+ * docs/design/board-v3.md in this phase):
108
+ * - hook `useSessionBoard(bridgeId, sessionId, enabled)` calls get_session_board on mount, on any session update
109
+ * for that tree, and every 15 s while the Overview is visible; never while hidden.
110
+ * - SessionOverview renders: manager line; "needs attention · n" (failed | blocked | escalated question; owner
111
+ * `you` or manager name); "active · n"; folds: planned (PlanView order), done (incl. archived/retired),
112
+ * events, brief. Row expand shows details (state/progress/age/stale, blocked, question, next, activity +
113
+ * idle duration, pr, worktree, mail, preview, agent, that session's last 3 events).
114
+ * - Idle duration: the UI records the timestamp when a session's activity becomes 'idle' (from hook events)
115
+ * and shows `idle <n>m`.
116
+ */
117
+ export type OverviewChild = SessionCard;