@farmslot/protocol 0.52.0 → 0.54.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 (70) hide show
  1. package/CHANGELOG.md +15 -1
  2. package/dist/client-cache/index.d.ts +11 -0
  3. package/dist/client-cache/index.d.ts.map +1 -0
  4. package/dist/client-cache/index.js +2 -0
  5. package/dist/client-cache/index.js.map +1 -0
  6. package/dist/contracts/acceptance.d.ts +18 -0
  7. package/dist/contracts/acceptance.d.ts.map +1 -1
  8. package/dist/contracts/acceptance.js +3 -0
  9. package/dist/contracts/acceptance.js.map +1 -1
  10. package/dist/contracts/agents.d.ts +1 -1
  11. package/dist/contracts/agents.d.ts.map +1 -1
  12. package/dist/contracts/runs.d.ts +100 -21
  13. package/dist/contracts/runs.d.ts.map +1 -1
  14. package/dist/contracts/runs.js +15 -0
  15. package/dist/contracts/runs.js.map +1 -1
  16. package/dist/contracts/slots.d.ts +14 -0
  17. package/dist/contracts/slots.d.ts.map +1 -1
  18. package/dist/contracts/worker-terminal.d.ts +2 -0
  19. package/dist/contracts/worker-terminal.d.ts.map +1 -1
  20. package/dist/contracts/worker-terminal.js.map +1 -1
  21. package/dist/index.d.ts +2 -0
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +2 -0
  24. package/dist/index.js.map +1 -1
  25. package/dist/recipe/evidence.d.ts +7 -0
  26. package/dist/recipe/evidence.d.ts.map +1 -1
  27. package/dist/recipe/evidence.js.map +1 -1
  28. package/dist/recipe/index.d.ts +1 -0
  29. package/dist/recipe/index.d.ts.map +1 -1
  30. package/dist/recipe/index.js +1 -0
  31. package/dist/recipe/index.js.map +1 -1
  32. package/dist/recipe/pipeline-visual-judgments.d.ts +179 -5
  33. package/dist/recipe/pipeline-visual-judgments.d.ts.map +1 -1
  34. package/dist/recipe/pipeline-visual-judgments.js +64 -4
  35. package/dist/recipe/pipeline-visual-judgments.js.map +1 -1
  36. package/dist/recipe/repair.d.ts +93 -0
  37. package/dist/recipe/repair.d.ts.map +1 -0
  38. package/dist/recipe/repair.js +213 -0
  39. package/dist/recipe/repair.js.map +1 -0
  40. package/dist/runs/decision-resolution.d.ts.map +1 -1
  41. package/dist/runs/decision-resolution.js +4 -0
  42. package/dist/runs/decision-resolution.js.map +1 -1
  43. package/dist/runs/evidence-summary.d.ts +24 -2
  44. package/dist/runs/evidence-summary.d.ts.map +1 -1
  45. package/dist/runs/evidence-summary.js +143 -53
  46. package/dist/runs/evidence-summary.js.map +1 -1
  47. package/dist/runs/run-list-view.d.ts +25 -0
  48. package/dist/runs/run-list-view.d.ts.map +1 -0
  49. package/dist/runs/run-list-view.js +54 -0
  50. package/dist/runs/run-list-view.js.map +1 -0
  51. package/dist/sources/changes.d.ts +37 -0
  52. package/dist/sources/changes.d.ts.map +1 -0
  53. package/dist/sources/changes.js +79 -0
  54. package/dist/sources/changes.js.map +1 -0
  55. package/dist/sources/controller.d.ts +20 -0
  56. package/dist/sources/controller.d.ts.map +1 -1
  57. package/dist/sources/controller.js +63 -1
  58. package/dist/sources/controller.js.map +1 -1
  59. package/dist/sources/status-view.d.ts +6 -1
  60. package/dist/sources/status-view.d.ts.map +1 -1
  61. package/dist/sources/status-view.js +17 -8
  62. package/dist/sources/status-view.js.map +1 -1
  63. package/dist/transport/events.d.ts +16 -0
  64. package/dist/transport/events.d.ts.map +1 -1
  65. package/dist/transport/events.js.map +1 -1
  66. package/dist/version.d.ts +1 -1
  67. package/dist/version.js +1 -1
  68. package/package.json +6 -1
  69. package/scripts/acceptance.d.mts +8 -0
  70. package/scripts/acceptance.mjs +31 -1
@@ -0,0 +1,25 @@
1
+ import { type FlowType, type Run, type RunLane, type RunStatus } from '../contracts/runs.js';
2
+ import type { SlotStatus } from '../contracts/slots.js';
3
+ /** Page size both clients request for `run.list` `active`. */
4
+ export declare const ACTIVE_RUN_LIST_LIMIT = 200;
5
+ /** `active` follows `isActiveListRun`, `history` keeps terminal runs, `all` keeps every run. */
6
+ export type RunListScope = 'active' | 'history' | 'all';
7
+ export interface RunListQuery {
8
+ scope: RunListScope;
9
+ projects?: readonly string[];
10
+ machines?: readonly string[];
11
+ /** Fleet slot to machine. A slot missing here matches a machine by its `<machine>-` prefix. */
12
+ slotMachines?: ReadonlyMap<string, string>;
13
+ status?: RunStatus;
14
+ flow?: FlowType;
15
+ lane?: RunLane;
16
+ tag?: string;
17
+ search?: string;
18
+ }
19
+ /** The runs a run list shows, in input order. Command Center and Companion both list through this. */
20
+ export declare function selectRunList(runs: readonly Run[], query: RunListQuery): Run[];
21
+ /** The `slotMachines` map for a fleet snapshot. */
22
+ export declare function slotMachineMap(slots: readonly Pick<SlotStatus, 'slot' | 'machine'>[]): Map<string, string>;
23
+ /** Incoming runs replace stored runs with the same id; newest first. */
24
+ export declare function mergeRunsById(existing: readonly Run[], incoming: readonly Run[]): Run[];
25
+ //# sourceMappingURL=run-list-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-list-view.d.ts","sourceRoot":"","sources":["../../src/runs/run-list-view.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,QAAQ,EAIb,KAAK,GAAG,EACR,KAAK,OAAO,EACZ,KAAK,SAAS,EACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAIxD,8DAA8D;AAC9D,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,gGAAgG;AAChG,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,CAAC;AAExD,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,YAAY,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,+FAA+F;IAC/F,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,sGAAsG;AACtG,wBAAgB,aAAa,CAAC,IAAI,EAAE,SAAS,GAAG,EAAE,EAAE,KAAK,EAAE,YAAY,GAAG,GAAG,EAAE,CAc9E;AAED,mDAAmD;AACnD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,IAAI,CAAC,UAAU,EAAE,MAAM,GAAG,SAAS,CAAC,EAAE,GACrD,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAErB;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,QAAQ,EAAE,SAAS,GAAG,EAAE,EAAE,QAAQ,EAAE,SAAS,GAAG,EAAE,GAAG,GAAG,EAAE,CAIvF"}
@@ -0,0 +1,54 @@
1
+ import { isActiveListRun, isTerminalRunStatus, normalizeRunTags, } from '../contracts/runs.js';
2
+ import { resolveRunSlotId } from './slot-resolution.js';
3
+ /** Page size both clients request for `run.list` `active`. */
4
+ export const ACTIVE_RUN_LIST_LIMIT = 200;
5
+ /** The runs a run list shows, in input order. Command Center and Companion both list through this. */
6
+ export function selectRunList(runs, query) {
7
+ const [tag] = normalizeRunTags(query.tag ? [query.tag] : []);
8
+ const search = query.search?.trim().toLowerCase();
9
+ return runs.filter((run) => inScope(run, query.scope) &&
10
+ (!query.projects?.length || query.projects.includes(run.project)) &&
11
+ (!query.machines?.length || onMachines(run, query.machines, query.slotMachines)) &&
12
+ (!query.status || run.status === query.status) &&
13
+ (!query.flow || run.flowType === query.flow) &&
14
+ (!query.lane || run.lane === query.lane) &&
15
+ (!tag || normalizeRunTags(run.tags).includes(tag)) &&
16
+ (!search || matchesSearch(run, search)));
17
+ }
18
+ /** The `slotMachines` map for a fleet snapshot. */
19
+ export function slotMachineMap(slots) {
20
+ return new Map(slots.map((slot) => [slot.slot, slot.machine]));
21
+ }
22
+ /** Incoming runs replace stored runs with the same id; newest first. */
23
+ export function mergeRunsById(existing, incoming) {
24
+ const byId = new Map(existing.map((run) => [run.id, run]));
25
+ for (const run of incoming)
26
+ byId.set(run.id, run);
27
+ return [...byId.values()].sort((left, right) => right.createdAt.localeCompare(left.createdAt));
28
+ }
29
+ function inScope(run, scope) {
30
+ if (scope === 'active')
31
+ return isActiveListRun(run);
32
+ if (scope === 'history')
33
+ return isTerminalRunStatus(run.status);
34
+ return true;
35
+ }
36
+ function onMachines(run, machines, slotMachines) {
37
+ const slotId = resolveRunSlotId(run);
38
+ if (!slotId)
39
+ return false;
40
+ const machine = slotMachines?.get(slotId);
41
+ if (machine)
42
+ return machines.includes(machine);
43
+ return machines.some((name) => slotId === name || slotId.startsWith(`${name}-`));
44
+ }
45
+ function matchesSearch(run, search) {
46
+ return [
47
+ run.ticketOrPr,
48
+ run.summary,
49
+ resolveRunSlotId(run),
50
+ run.metrics.disposition?.replace(/_/g, ' '),
51
+ ...(run.tags ?? []),
52
+ ].some((value) => value?.toLowerCase().includes(search));
53
+ }
54
+ //# sourceMappingURL=run-list-view.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"run-list-view.js","sourceRoot":"","sources":["../../src/runs/run-list-view.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ import { type ResourceChangedPayload } from '../transport/events.js';
2
+ /** The source revision a controller compares; revisions never compare across epochs. */
3
+ export interface SourceRevisionMark {
4
+ epoch: string;
5
+ revision: number;
6
+ }
7
+ /** The one carrier decoder. */
8
+ export declare function sourceResourceChanges(event: string, payload: unknown): ResourceChangedPayload | undefined;
9
+ /** True when `next` is a change a reader holding `seen` has not covered. */
10
+ export declare function isNewerSourceRevision(next: SourceRevisionMark, seen: SourceRevisionMark | undefined): boolean;
11
+ export interface SourceChangeFeedState {
12
+ /** Undefined until this connection's `hello` arrives. */
13
+ announced?: boolean;
14
+ latest?: SourceRevisionMark;
15
+ }
16
+ /**
17
+ * One feed per gateway connection, fed with every received event. It remembers
18
+ * whether `hello` announced the signal so panels mounted later can tell.
19
+ */
20
+ export declare class SourceChangeFeed {
21
+ private state;
22
+ private listeners;
23
+ getState: () => SourceChangeFeedState;
24
+ subscribe: (listener: () => void) => (() => void);
25
+ receive(event: string, payload: unknown): void;
26
+ /** A new connection must announce again; its revisions start a new comparison. */
27
+ disconnected(): void;
28
+ }
29
+ export declare function createSourceChangeFeed(): SourceChangeFeed;
30
+ /** The part of a host's gateway client that feeds source changes. */
31
+ export interface SourceChangeConnection {
32
+ subscribe(event: string, handler: (payload: unknown) => void): unknown;
33
+ onConnectionChange(listener: (state: string) => void): unknown;
34
+ }
35
+ /** Wire a host connection to its feed; hosts call this once per gateway client. */
36
+ export declare function connectSourceChangeFeed(feed: SourceChangeFeed, connection: SourceChangeConnection): void;
37
+ //# sourceMappingURL=changes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changes.d.ts","sourceRoot":"","sources":["../../src/sources/changes.ts"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAE7E,wFAAwF;AACxF,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAQD,+BAA+B;AAC/B,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,GACf,sBAAsB,GAAG,SAAS,CAapC;AAaD,4EAA4E;AAC5E,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,kBAAkB,EACxB,IAAI,EAAE,kBAAkB,GAAG,SAAS,GACnC,OAAO,CAET;AAED,MAAM,WAAW,qBAAqB;IACpC,yDAAyD;IACzD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,kBAAkB,CAAC;CAC7B;AAED;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,SAAS,CAAyB;IAE1C,QAAQ,QAAO,qBAAqB,CAAe;IAEnD,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAG9C;IAEF,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAW9C,kFAAkF;IAClF,YAAY,IAAI,IAAI;CAKrB;AAED,wBAAgB,sBAAsB,IAAI,gBAAgB,CAEzD;AAED,qEAAqE;AACrE,MAAM,WAAW,sBAAsB;IACrC,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,GAAG,OAAO,CAAC;IACvE,kBAAkB,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC;CAChE;AAED,mFAAmF;AACnF,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,gBAAgB,EACtB,UAAU,EAAE,sBAAsB,GACjC,IAAI,CAMN"}
@@ -0,0 +1,79 @@
1
+ import { Events } from '../transport/events.js';
2
+ /**
3
+ * The carrier (ADR-069 Amendment 1). Until `resource.changed` exists the payload rides on
4
+ * `hello` and `fleet.updated`; adopting ADR-071 changes only these events and the decoder.
5
+ */
6
+ const SOURCE_CHANGE_EVENTS = [Events.HELLO, Events.FLEET_UPDATED];
7
+ /** The one carrier decoder. */
8
+ export function sourceResourceChanges(event, payload) {
9
+ if (!SOURCE_CHANGE_EVENTS.includes(event))
10
+ return undefined;
11
+ const changes = payload?.resourceChanges;
12
+ if (!changes || typeof changes !== 'object')
13
+ return undefined;
14
+ const candidate = changes;
15
+ if (candidate.version !== 1 ||
16
+ typeof candidate.epoch !== 'string' ||
17
+ !candidate.epoch ||
18
+ !Array.isArray(candidate.changes))
19
+ return undefined;
20
+ return candidate;
21
+ }
22
+ function sourceMark(payload) {
23
+ const change = payload.changes.find((entry) => entry?.key?.family === 'sources' &&
24
+ entry.key.scope === 'farm' &&
25
+ Number.isSafeInteger(entry.revision) &&
26
+ entry.revision >= 0);
27
+ return change ? { epoch: payload.epoch, revision: change.revision } : undefined;
28
+ }
29
+ /** True when `next` is a change a reader holding `seen` has not covered. */
30
+ export function isNewerSourceRevision(next, seen) {
31
+ return !seen || next.epoch !== seen.epoch || next.revision > seen.revision;
32
+ }
33
+ /**
34
+ * One feed per gateway connection, fed with every received event. It remembers
35
+ * whether `hello` announced the signal so panels mounted later can tell.
36
+ */
37
+ export class SourceChangeFeed {
38
+ constructor() {
39
+ this.state = {};
40
+ this.listeners = new Set();
41
+ this.getState = () => this.state;
42
+ this.subscribe = (listener) => {
43
+ this.listeners.add(listener);
44
+ return () => this.listeners.delete(listener);
45
+ };
46
+ }
47
+ receive(event, payload) {
48
+ const changes = sourceResourceChanges(event, payload);
49
+ const mark = changes ? sourceMark(changes) : undefined;
50
+ const announced = event === Events.HELLO ? Boolean(mark) : this.state.announced;
51
+ const latest = mark && isNewerSourceRevision(mark, this.state.latest) ? mark : this.state.latest;
52
+ if (announced === this.state.announced && latest === this.state.latest)
53
+ return;
54
+ this.state = { announced, latest };
55
+ for (const listener of this.listeners)
56
+ listener();
57
+ }
58
+ /** A new connection must announce again; its revisions start a new comparison. */
59
+ disconnected() {
60
+ if (this.state.announced === undefined && !this.state.latest)
61
+ return;
62
+ this.state = {};
63
+ for (const listener of this.listeners)
64
+ listener();
65
+ }
66
+ }
67
+ export function createSourceChangeFeed() {
68
+ return new SourceChangeFeed();
69
+ }
70
+ /** Wire a host connection to its feed; hosts call this once per gateway client. */
71
+ export function connectSourceChangeFeed(feed, connection) {
72
+ for (const event of SOURCE_CHANGE_EVENTS)
73
+ connection.subscribe(event, (payload) => feed.receive(event, payload));
74
+ connection.onConnectionChange((state) => {
75
+ if (state !== 'connected')
76
+ feed.disconnected();
77
+ });
78
+ }
79
+ //# sourceMappingURL=changes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"changes.js","sourceRoot":"","sources":["../../src/sources/changes.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type SourceChangeFeed } from './changes.js';
1
2
  import { type PreparedSourceCommand, type SourceCommandClient } from './client.js';
2
3
  import type { SourceSelection } from './pins.js';
3
4
  import { type SourceStatusViewContext, type SourceStatusViewModel, type SourceViewAction } from './status-view.js';
@@ -15,6 +16,12 @@ export interface SourceStatusSnapshot {
15
16
  interactive: boolean;
16
17
  canEdit: boolean;
17
18
  selectionRefusal?: string;
19
+ /** Render nothing: no facts or failure yet, an empty context, or a viewer that cannot read. */
20
+ hidden: boolean;
21
+ /** Render the rows' pin and sync controls. */
22
+ controls: boolean;
23
+ /** The gateway reports sources but did not announce live source status. */
24
+ unsupported: boolean;
18
25
  }
19
26
  /** One context-bound controller serves thin web/native status and selection renderers. */
20
27
  export declare class SourceStatusController {
@@ -25,10 +32,23 @@ export declare class SourceStatusController {
25
32
  private listeners;
26
33
  private snapshot;
27
34
  private pendingConnectionKey?;
35
+ private feed?;
36
+ private covered?;
37
+ /** The version of the read in flight; a context change abandons it. */
38
+ private readingVersion?;
39
+ private rereadAfterRead;
40
+ private deniedRead;
28
41
  constructor(client: SourceCommandClient, context: SourceStatusViewContext);
29
42
  getSnapshot: () => SourceStatusSnapshot;
30
43
  subscribe: (listener: () => void) => (() => void);
31
44
  private update;
45
+ /**
46
+ * Live source status (ADR-069 Amendment 1): reread when the gateway's source
47
+ * revision passes what the last read covered. Reconnects stay with the host,
48
+ * which already rereads on every new connection.
49
+ */
50
+ attachFeed(feed: SourceChangeFeed): () => void;
51
+ private observeFeed;
32
52
  setContext(context: SourceStatusViewContext): boolean;
33
53
  refresh(): Promise<void>;
34
54
  select(selection: SourceSelection): void;
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/sources/controller.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EAEzB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,qBAAqB,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAQD,0FAA0F;AAC1F,qBAAa,sBAAsB;IAS/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IARzB,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,MAAM,CAAC,CAAsB;IACrC,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,oBAAoB,CAAC,CAAS;gBAGnB,MAAM,EAAE,mBAAmB,EAC5C,OAAO,EAAE,uBAAuB;IAalC,WAAW,QAAO,oBAAoB,CAAkB;IAExD,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAG9C;IAEF,OAAO,CAAC,MAAM;IA2Bd,UAAU,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO;IAmC/C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB9B,MAAM,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI;IASxC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAOhC,KAAK,CAAC,MAAM,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0CjE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YASd,aAAa;CAmC5B"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/sources/controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,gBAAgB,EAEtB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EAEzB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,qBAAqB,EAC1B,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,qBAAqB,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,qBAAqB,CAAC;IAChC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,eAAe,EAAE,CAAC;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,+FAA+F;IAC/F,MAAM,EAAE,OAAO,CAAC;IAChB,8CAA8C;IAC9C,QAAQ,EAAE,OAAO,CAAC;IAClB,2EAA2E;IAC3E,WAAW,EAAE,OAAO,CAAC;CACtB;AAQD,0FAA0F;AAC1F,qBAAa,sBAAsB;IAe/B,OAAO,CAAC,QAAQ,CAAC,MAAM;IAdzB,OAAO,CAAC,OAAO,CAA0B;IACzC,OAAO,CAAC,MAAM,CAAC,CAAsB;IACrC,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,QAAQ,CAAuB;IACvC,OAAO,CAAC,oBAAoB,CAAC,CAAS;IACtC,OAAO,CAAC,IAAI,CAAC,CAAmB;IAChC,OAAO,CAAC,OAAO,CAAC,CAAqB;IACrC,uEAAuE;IACvE,OAAO,CAAC,cAAc,CAAC,CAAS;IAChC,OAAO,CAAC,eAAe,CAAS;IAChC,OAAO,CAAC,UAAU,CAAS;gBAGR,MAAM,EAAE,mBAAmB,EAC5C,OAAO,EAAE,uBAAuB;IAgBlC,WAAW,QAAO,oBAAoB,CAAkB;IAExD,SAAS,GAAI,UAAU,MAAM,IAAI,KAAG,CAAC,MAAM,IAAI,CAAC,CAG9C;IAEF,OAAO,CAAC,MAAM;IAqCd;;;;OAIG;IACH,UAAU,CAAC,IAAI,EAAE,gBAAgB,GAAG,MAAM,IAAI;IAU9C,OAAO,CAAC,WAAW;IAiBnB,UAAU,CAAC,OAAO,EAAE,uBAAuB,GAAG,OAAO;IAmC/C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAiC9B,MAAM,CAAC,SAAS,EAAE,eAAe,GAAG,IAAI;IASxC,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAOhC,KAAK,CAAC,MAAM,EAAE,gBAAgB,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA0CjE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;YASd,aAAa;CAmC5B"}
@@ -1,3 +1,4 @@
1
+ import { isNewerSourceRevision, } from './changes.js';
1
2
  import { sourceStatusParamsForTarget, } from './client.js';
2
3
  import { deriveSourceStatusView, } from './status-view.js';
3
4
  function commandLabel(command) {
@@ -11,6 +12,8 @@ export class SourceStatusController {
11
12
  this.client = client;
12
13
  this.version = 0;
13
14
  this.listeners = new Set();
15
+ this.rereadAfterRead = false;
16
+ this.deniedRead = false;
14
17
  this.getSnapshot = () => this.snapshot;
15
18
  this.subscribe = (listener) => {
16
19
  this.listeners.add(listener);
@@ -23,6 +26,9 @@ export class SourceStatusController {
23
26
  selections: structuredClone([...(context.selections ?? [])]),
24
27
  interactive: true,
25
28
  canEdit: false,
29
+ hidden: true,
30
+ controls: false,
31
+ unsupported: false,
26
32
  };
27
33
  this.update({});
28
34
  }
@@ -38,6 +44,14 @@ export class SourceStatusController {
38
44
  this.snapshot.interactive =
39
45
  !this.snapshot.busy && !this.snapshot.loading && !this.snapshot.pending;
40
46
  this.snapshot.canEdit = this.snapshot.interactive && this.snapshot.view?.editable === true;
47
+ const view = this.snapshot.view;
48
+ this.snapshot.hidden =
49
+ view?.hidden === true ||
50
+ (this.snapshot.error !== undefined && this.deniedRead) ||
51
+ (!view && this.snapshot.error === undefined && !this.snapshot.pending);
52
+ this.snapshot.controls = Boolean(view && (view.editable || view.draft || view.actions.length > 0));
53
+ this.snapshot.unsupported =
54
+ this.status?.configured === true && this.feed?.getState().announced === false;
41
55
  this.snapshot.selectionRefusal =
42
56
  this.snapshot.view?.selectionErrors[0] ??
43
57
  (!this.context.target &&
@@ -53,6 +67,37 @@ export class SourceStatusController {
53
67
  for (const listener of this.listeners)
54
68
  listener();
55
69
  }
70
+ /**
71
+ * Live source status (ADR-069 Amendment 1): reread when the gateway's source
72
+ * revision passes what the last read covered. Reconnects stay with the host,
73
+ * which already rereads on every new connection.
74
+ */
75
+ attachFeed(feed) {
76
+ this.feed = feed;
77
+ const unsubscribe = feed.subscribe(() => this.observeFeed());
78
+ this.observeFeed();
79
+ return () => {
80
+ unsubscribe();
81
+ if (this.feed === feed)
82
+ this.feed = undefined;
83
+ };
84
+ }
85
+ observeFeed() {
86
+ const latest = this.feed?.getState().latest;
87
+ if (latest && isNewerSourceRevision(latest, this.covered)) {
88
+ // A change during any read, the first included, is not covered by it.
89
+ if (this.readingVersion === this.version) {
90
+ this.rereadAfterRead = true;
91
+ return;
92
+ }
93
+ // Before the first read the host's initial load covers the current state.
94
+ if (this.status || this.snapshot.error) {
95
+ void this.refresh();
96
+ return;
97
+ }
98
+ }
99
+ this.update({});
100
+ }
56
101
  setContext(context) {
57
102
  if (JSON.stringify(context) === JSON.stringify(this.context))
58
103
  return false;
@@ -90,18 +135,35 @@ export class SourceStatusController {
90
135
  async refresh() {
91
136
  const version = ++this.version;
92
137
  const params = this.context.params ?? sourceStatusParamsForTarget(undefined, this.context.target);
138
+ // Gateways publish only after a change is readable, so this read covers the mark.
139
+ this.covered = this.feed?.getState().latest;
140
+ this.readingVersion = version;
141
+ this.rereadAfterRead = false;
93
142
  this.update({ loading: true, error: undefined });
94
143
  try {
95
144
  const status = await this.client.status(params);
96
145
  if (version !== this.version)
97
146
  return;
98
147
  this.status = status;
148
+ this.deniedRead = false;
99
149
  this.update({ loading: false });
100
150
  }
101
151
  catch (error) {
102
152
  // Read failures remain visible; stale responses cannot replace another context's facts.
103
- if (version === this.version)
153
+ if (version === this.version) {
154
+ this.deniedRead = error.code === 'AUTH_FORBIDDEN';
104
155
  this.update({ loading: false, error: error.message });
156
+ }
157
+ }
158
+ finally {
159
+ if (version === this.version) {
160
+ this.readingVersion = undefined;
161
+ // A change seen during the read is not covered by it: read once more.
162
+ if (this.rereadAfterRead) {
163
+ this.rereadAfterRead = false;
164
+ void this.refresh();
165
+ }
166
+ }
105
167
  }
106
168
  }
107
169
  select(selection) {
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/sources/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/sources/controller.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,8 @@ export interface SourceStatusViewContext {
13
13
  selections?: readonly SourceSelection[];
14
14
  }
15
15
  export interface SourceStatusRowView {
16
+ /** This source's part of the view's one line. */
17
+ line: string;
16
18
  summary: string;
17
19
  details: string[];
18
20
  declaration: SourceDeclaration;
@@ -36,7 +38,10 @@ export interface SourceStatusRowView {
36
38
  }
37
39
  export interface SourceStatusViewModel {
38
40
  configured: boolean;
39
- readOnlyReason?: string;
41
+ /** Render nothing: no declared sources, pins or recorded run inputs in this context. */
42
+ hidden: boolean;
43
+ /** One line naming each source's effective ref, with branch and scope for pins. */
44
+ line: string;
40
45
  declarationRevision?: number;
41
46
  pinRevision?: number;
42
47
  target?: SourcePinTarget;
@@ -1 +1 @@
1
- {"version":3,"file":"status-view.d.ts","sourceRoot":"","sources":["../../src/sources/status-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAGlF,OAAO,KAAK,EACV,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,eAAe,EAGrB,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;AACxD,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAItE,CAAC;AAEF,2FAA2F;AAC3F,MAAM,WAAW,uBAAuB;IACtC,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACrC,UAAU,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,SAAS,CAAC,EAAE,wBAAwB,CAAC;IACrC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,aAAa,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE,CAAC,CAAC;IACjG,gBAAgB,EAAE,KAAK,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC,CAAC;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,EAAE,mBAAmB,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;CACvC;AAED,wFAAwF;AACxF,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,EAAE,uBAAuB,GAC/B,qBAAqB,CA8IvB"}
1
+ {"version":3,"file":"status-view.d.ts","sourceRoot":"","sources":["../../src/sources/status-view.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAGlF,OAAO,KAAK,EACV,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EACL,KAAK,wBAAwB,EAC7B,KAAK,eAAe,EACpB,KAAK,eAAe,EAGrB,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,gBAAgB,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC;AACxD,eAAO,MAAM,yBAAyB,EAAE,MAAM,CAAC,gBAAgB,EAAE,MAAM,CAItE,CAAC;AAEF,2FAA2F;AAC3F,MAAM,WAAW,uBAAuB;IACtC,8FAA8F;IAC9F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,OAAO,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACrC,UAAU,CAAC,EAAE,SAAS,eAAe,EAAE,CAAC;CACzC;AAED,MAAM,WAAW,mBAAmB;IAClC,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,WAAW,EAAE,iBAAiB,CAAC;IAC/B,SAAS,CAAC,EAAE,wBAAwB,CAAC;IACrC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAC9B,aAAa,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;QAAC,KAAK,EAAE,eAAe,CAAA;KAAE,CAAC,CAAC;IACjG,gBAAgB,EAAE,KAAK,CAAC;QACtB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,EAAE,CAAC;KACjB,CAAC,CAAC;IACH,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,OAAO,CAAC;IACpB,wFAAwF;IACxF,MAAM,EAAE,OAAO,CAAC;IAChB,mFAAmF;IACnF,IAAI,EAAE,MAAM,CAAC;IACb,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,mBAAmB,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,EAAE,mBAAmB,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC;CACvC;AAED,wFAAwF;AACxF,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,mBAAmB,EAC3B,OAAO,EAAE,uBAAuB,GAC/B,qBAAqB,CAsJvB"}
@@ -28,12 +28,10 @@ export function deriveSourceStatusView(status, context) {
28
28
  const declarations = [...declared.values()].filter((source) => !params.sourceId || source.id === params.sourceId);
29
29
  const hasRevisions = Number.isInteger(status.declarationRevision) && Number.isInteger(status.pinRevision);
30
30
  const draft = context.selections !== undefined && context.target === undefined;
31
- return structuredClone({
31
+ const view = structuredClone({
32
32
  configured: status.configured,
33
- readOnlyReason: status.runSource?.selectionRefusal ??
34
- (!status.configured
35
- ? 'Source authority is not configured. Retained inputs are read-only.'
36
- : undefined),
33
+ hidden: false,
34
+ line: '',
37
35
  declarationRevision: status.declarationRevision,
38
36
  pinRevision: status.pinRevision,
39
37
  target: context.target,
@@ -94,17 +92,25 @@ export function deriveSourceStatusView(status, context) {
94
92
  selectionErrors,
95
93
  canPin: selection?.selection === 'branch' && selectionErrors.length === 0,
96
94
  };
97
- const visiblePin = status.runSource?.state === 'locked' ? row.recordedLocks[0]?.entry.pin : row.effective?.pin;
95
+ const locked = status.runSource?.state === 'locked';
96
+ const recorded = locked ? row.recordedLocks[0]?.entry : undefined;
97
+ const visiblePin = locked ? recorded?.pin : row.effective?.pin;
98
+ const ref = recorded?.effectiveRef ?? row.effective?.effectiveRef ?? declaration.ref ?? 'main';
98
99
  const pinSummary = visiblePin
99
100
  ? `; ${visiblePin.selection === 'branch' ? 'pinned' : 'main override'} ${visiblePin.scope}, base main ${visiblePin.baseMainCommit}`
100
101
  : '';
101
102
  const summary = draftRef !== undefined
102
103
  ? `${declaration.id} run selection ${draftRef} ${draftResolution?.commit ?? 'unresolved'} ${draftResolution?.status ?? 'unknown'}, reported main base ${mainResolution?.commit ?? 'unresolved'}`
103
- : status.runSource?.state === 'locked' && row.recordedLocks[0]
104
- ? `${declaration.id} run input ${row.recordedLocks[0].entry.effectiveRef} ${row.recordedLocks[0].entry.commit}${pinSummary}`
104
+ : recorded
105
+ ? `${declaration.id} run input ${recorded.effectiveRef} ${recorded.commit}${pinSummary}`
105
106
  : `${declaration.id} reported ${row.effective?.effectiveRef ?? declaration.ref ?? 'main'} ${row.resolution?.commit ?? 'unresolved'} ${row.resolution?.status ?? 'unknown'}${pinSummary}`;
106
107
  return {
107
108
  ...row,
109
+ line: !visiblePin
110
+ ? `${declaration.id} ${ref}`
111
+ : visiblePin.selection === 'branch'
112
+ ? `${declaration.id} ${ref} (${visiblePin.scope} pin)`
113
+ : `${declaration.id} main (${visiblePin.scope} override)`,
108
114
  summary,
109
115
  details: [
110
116
  ...(draftRef !== undefined
@@ -118,6 +124,9 @@ export function deriveSourceStatusView(status, context) {
118
124
  }),
119
125
  errors: status.errors,
120
126
  });
127
+ view.hidden = view.rows.length === 0 && !status.pins?.length;
128
+ view.line = view.rows.map((row) => row.line).join(' · ');
129
+ return view;
121
130
  }
122
131
  /** All renderers describe the same reported locks, pin audit and receipt facts. */
123
132
  function sourceRowFacts(row) {
@@ -1 +1 @@
1
- {"version":3,"file":"status-view.js","sourceRoot":"","sources":["../../src/sources/status-view.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status-view.js","sourceRoot":"","sources":["../../src/sources/status-view.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import type { ResourceKey, ResourceRevision } from '../client-cache/index.js';
1
2
  import type { AgentRole, BacklogItem, ChatMessage, FleetStatus, MachineHealth, MachineParkRecord, MonitorViolation, PendingDecision, PRStatus, QueueItem, ResourceStateUpdate, Run, RuntimeCapabilityLifecycleEvent, ScriptComplete, ScriptOutput, SlotStatus, StreamFrame, StreamStatus, TerminalData, WorkGraphProjection } from '../contracts/index.js';
2
3
  import type { CIWatchFixProgress, CIWatchFixTrigger, CIWatchPhase } from '../recipes/step-io.js';
3
4
  import type { FileTransferProgress, TaskProgressResult, WorkerSessionHistoryDeltaPayload } from '../rpc/index.js';
@@ -64,8 +65,21 @@ export declare const Events: {
64
65
  readonly LLM_AUTH_LOGIN_PROGRESS: "llm.auth.login.progress";
65
66
  readonly FILE_TRANSFER_PROGRESS: "file.transfer.progress";
66
67
  };
68
+ /** Invalidation-only change notice; clients reread through existing methods. */
69
+ export interface ResourceChangedPayload {
70
+ version: 1;
71
+ /** Opaque gateway process identity; revisions are never compared across epochs. */
72
+ epoch: string;
73
+ changes: Array<{
74
+ key: ResourceKey;
75
+ revision: ResourceRevision;
76
+ kind: 'updated' | 'deleted';
77
+ }>;
78
+ }
67
79
  export interface FleetUpdatedPayload {
68
80
  fleet: FleetStatus;
81
+ /** Carrier for ResourceChangedPayload until `resource.changed` exists (ADR-069 Amendment 1). */
82
+ resourceChanges?: ResourceChangedPayload;
69
83
  }
70
84
  export interface SlotChangedPayload {
71
85
  slot: SlotStatus;
@@ -258,6 +272,8 @@ export interface MachinePauseUpdatedPayload {
258
272
  }
259
273
  export interface HelloPayload {
260
274
  fleet: FleetStatus | null;
275
+ /** Present when the gateway announces live source status (ADR-069 Amendment 1). */
276
+ resourceChanges?: ResourceChangedPayload;
261
277
  }
262
278
  export interface ChatResponsePayload {
263
279
  sessionId: string;