@econ-v1/rpc 7.5.0 → 7.5.2

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.
@@ -0,0 +1,30 @@
1
+ /**
2
+ * The exact record the API Store accepts, or `undefined`. Unknown keys refuse
3
+ * the whole record: the command boundary forwards nothing it did not check.
4
+ * @param {unknown} value
5
+ * @returns {BrowserTurnRecord | undefined}
6
+ */
7
+ export function parseBrowserTurnRecord(value: unknown): BrowserTurnRecord | undefined;
8
+ /**
9
+ * The browser ↔ node hop for capability calls a stage starts (ADR-077).
10
+ *
11
+ * The shell puts a fresh `browser_turn_id` on the object payload of each
12
+ * `ctx.invokeCapability` call and times the call. A provider that adopts the id
13
+ * echoes it with its own handler time, `browser_turn_node_ms`, at the top level
14
+ * of its result. The shell then sends one record through the shell-owned
15
+ * command below; the kernel forwards it to the API Store's
16
+ * `core.api_store.llm.calls.record_turn_browser_rtt` as the paired device, not
17
+ * as the stage. The field names are the cross-repo contract and must not drift.
18
+ */
19
+ /** Shell → kernel. Not exposed to stages: the shell's port only. */
20
+ export const BROWSER_TURN_RECORD_COMMAND: "browser-turn.record.v1";
21
+ /** Owned by the API Store; granted to every paired browser in the base scopes. */
22
+ export const BROWSER_TURN_RECORD_CAPABILITY: "core.api_store.llm.calls.record_turn_browser_rtt";
23
+ export type BrowserTurnRecord = {
24
+ readonly browser_turn_id: string;
25
+ readonly browser_rtt_ms: number;
26
+ readonly browser_turn_node_ms: number;
27
+ readonly app_name: string;
28
+ readonly app_title?: string;
29
+ };
30
+ //# sourceMappingURL=browser-turn-contract.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser-turn-contract.d.ts","sourceRoot":"","sources":["../src/browser-turn-contract.js"],"names":[],"mappings":"AA+CA;;;;;GAKG;AACH,8CAHW,OAAO,GACL,iBAAiB,GAAG,SAAS,CAsBzC;AAvED;;;;;;;;;;GAUG;AAEH,oEAAoE;AACpE,0CAA2C,wBAAwB,CAAC;AACpE,kFAAkF;AAClF,6CAA8C,kDAAkD,CAAC;gCAWpF;IACZ,QAAY,CAAC,eAAe,EAAE,MAAM,CAAC;IACrC,QAAY,CAAC,cAAc,EAAE,MAAM,CAAC;IACpC,QAAY,CAAC,oBAAoB,EAAE,MAAM,CAAC;IAC1C,QAAY,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC9B,QAAY,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B"}
@@ -1 +1 @@
1
- {"version":3,"file":"describe-client-error.d.ts","sourceRoot":"","sources":["../src/describe-client-error.js"],"names":[],"mappings":"AAkDA;;;;;;;;;;GAUG;AACH,2CAHW,OAAO,GACL,oBAAoB,CAmChC;mCA5Fa;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ,CAAA;CAAE"}
1
+ {"version":3,"file":"describe-client-error.d.ts","sourceRoot":"","sources":["../src/describe-client-error.js"],"names":[],"mappings":"AAmDA;;;;;;;;;;GAUG;AACH,2CAHW,OAAO,GACL,oBAAoB,CAmChC;mCA7Fa;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,GAAG,QAAQ,CAAA;CAAE"}
package/dist/index.d.ts CHANGED
@@ -113,6 +113,7 @@ export type OnboardingScreen = import("./onboarding/onboarding-contract.js").Onb
113
113
  export type OnboardingView = import("./onboarding/onboarding-contract.js").OnboardingView;
114
114
  export type NodeAppMemoryDetailQueryParams = import("./node-app-memory-contract.js").NodeAppMemoryDetailQueryParams;
115
115
  export type AppsLifecyclePinCommandPayload = import("./apps-lifecycle-contract.js").AppsLifecyclePinCommandPayload;
116
+ export type BrowserTurnRecord = import("./browser-turn-contract.js").BrowserTurnRecord;
116
117
  export type L402Enforcement = import("./l402-enforcement-contract.js").L402Enforcement;
117
118
  export type L402EnforcementRow = import("./l402-enforcement-contract.js").L402EnforcementRow;
118
119
  export type L402EnforcementSource = import("./l402-enforcement-contract.js").L402EnforcementSource;
@@ -205,6 +206,7 @@ export { deserializeClientError, isJsonValue, isSerializableClientError, seriali
205
206
  export { DEFAULT_REQUEST_TIMEOUT_MS, KernelRpcTimeoutError, MessagePortKernelRpcClient } from "./message-port-client.js";
206
207
  export { NODE_APP_LIFECYCLE_COMMAND, NODE_APP_MEMORY_CAPTURE_COMMAND, NODE_APP_MEMORY_DETAIL_QUERY, NODE_APP_MEMORY_DOWNLOAD_COMMAND, NODE_APP_MEMORY_LIST_QUERY, NODE_APP_MEMORY_OVERVIEW_QUERY, NODE_APP_MEMORY_STATUS_COMMAND } from "./node-app-memory-contract.js";
207
208
  export { APPS_LIFECYCLE_PIN_COMMAND, APPS_LIFECYCLE_QUERY } from "./apps-lifecycle-contract.js";
209
+ export { BROWSER_TURN_RECORD_CAPABILITY, BROWSER_TURN_RECORD_COMMAND, parseBrowserTurnRecord } from "./browser-turn-contract.js";
208
210
  export { HOST_CONTEXT_MAX_BYTES, validateHostContextView } from "./host-context-contract.js";
209
211
  export { L402_ENFORCEMENT_QUERY, L402_ENFORCEMENT_ROW_ID, L402_ENFORCEMENT_SET_COMMAND } from "./l402-enforcement-contract.js";
210
212
  export { isRouteMode, MODEL_PICKER_CATALOG_QUERY, MODEL_PICKER_CATALOG_ROW_ID, MODEL_PICKER_RECENTS_LIMIT, MODEL_PICKER_RECENTS_SETTING, MODEL_PICKER_STAGE_ID, ROUTE_MODES, WEB_SEARCH_AUTO } from "./model-picker-contract.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":"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"}
@@ -62,8 +62,51 @@ export type AssistantPanelHost = {
62
62
  onVisibilityChange(cb: (open: boolean) => void): Unsubscribe;
63
63
  setStatus(text: string): void;
64
64
  setBadge(count: number): void;
65
+ mountHeader?(header: HTMLElement): Unsubscribe | undefined;
66
+ mountActions?(actions: HTMLElement): Unsubscribe | undefined;
67
+ };
68
+ export type AgentPageContextResult = {
69
+ status: "excluded" | "collecting" | "ready" | "partial" | "unavailable";
70
+ snapshot: unknown;
71
+ };
72
+ export type AgentPageContextHost = {
73
+ readonly tabId: string;
74
+ prepareTurn(conversationId: string): Promise<void>;
75
+ executeAuthorized(name: string, args: Record<string, unknown>, target: {
76
+ nodeId: string;
77
+ pageId: string;
78
+ navigationRevision: number;
79
+ }, verify: () => Promise<void>): Promise<unknown>;
80
+ setConversation(selection: {
81
+ conversationId: string;
82
+ allowed: boolean;
83
+ active: boolean;
84
+ }): void;
85
+ subscribe(listener: (result: AgentPageContextResult) => void): Unsubscribe;
86
+ captureForSend(): Promise<AgentPageContextResult>;
87
+ readTarget(): Promise<{
88
+ nodeId: string;
89
+ pageId: string;
90
+ navigationRevision: number;
91
+ } | null>;
92
+ };
93
+ export type AgentViewWorkspace = {
94
+ read(): unknown;
95
+ activate(provider: () => unknown): Unsubscribe;
96
+ current(view: "stage" | "widget"): unknown;
97
+ register(view: "stage" | "widget", provider: () => unknown, releaseDraft?: (current: unknown, accepted: unknown) => unknown): Unsubscribe;
98
+ transfer(from: "stage" | "widget", to: "stage" | "widget"): boolean;
99
+ cancelTransfersFrom?(from: "stage" | "widget"): void;
100
+ pending(view: "stage" | "widget"): {
101
+ id: number;
102
+ state: unknown;
103
+ } | null;
104
+ subscribe(view: "stage" | "widget", listener: () => void): Unsubscribe;
105
+ acknowledge(view: "stage" | "widget", id: number): boolean;
65
106
  };
66
107
  export type StageHostShared = {
108
+ readonly assistantWorkspace?: AgentViewWorkspace;
109
+ readonly pageContext?: AgentPageContextHost;
67
110
  navigate(path: string): void;
68
111
  readonly root: Element;
69
112
  readonly context: {
@@ -1 +1 @@
1
- {"version":3,"file":"stage-context.d.ts","sourceRoot":"","sources":["../src/stage-context.js"],"names":[],"mappings":"8BAEc,OAAO,iBAAiB,EAAE,eAAe;wBACzC,OAAO,iBAAiB,EAAE,SAAS;0BACnC,OAAO,aAAa,EAAE,WAAW;oCACjC,OAAO,aAAa,EAAE,qBAAqB;gCAC3C,OAAO,aAAa,EAAE,iBAAiB;2BACvC,OAAO,sBAAsB,EAAE,YAAY;gCAC3C,OAAO,4BAA4B,EAAE,iBAAiB;iCACtD,OAAO,6BAA6B,EAAE,kBAAkB;wBACxD,OAAO,iBAAiB,EAAE,SAAS;+BACnC;IAAE,QAAQ,IAAI,SAAS,CAAC;IAAC,cAAc,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,GAAG,WAAW,CAAC;IAAC,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE;+BACnI;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,IAAI,CAAA;CAAE;2BAC7E;IAAE,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE;+BACvE,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,gBAAgB,KAAK,OAAO,CAAC,YAAY,CAAC;8BACrF;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,cAAc,GAAG,SAAS,GAAG,gBAAgB,GAAG,mBAAmB,GAAG,gBAAgB,GAAG,qBAAqB,GAAG,kBAAkB,GAAG,eAAe,GAAG,0BAA0B,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE;kCAC5W;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAAE;wBAC1F;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,KAAK,WAAW,CAAC;IAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,EAAE,KAAK,CAAC,EAAE,MAAM,KAAK,mBAAmB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE;iCACvQ;IACb,QAAY,CAAC,GAAG,EAAE;QAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IACtE,QAAY,CAAC,MAAM,EAAE;QACf,OAAO,CAAC,CAAC,SAAS,eAAe,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,iBAAiB,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;QACrH,SAAS,CAAC,CAAC,SAAS,eAAe,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,OAAO,CAAC,EAAE,qBAAqB,GAAG,iBAAiB,CAAA;KAC7K,CAAC;IACF,gBAAgB,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACtE,SAAS,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,OAAO,iBAAiB,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,WAAW,CAAC;IAC9H,OAAO,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7D,KAAK,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3D,QAAY,CAAC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC5C,QAAY,CAAC,KAAK,EAAE,SAAS,CAAA;CAC1B;iCACU;IAAE,IAAI,IAAI,IAAI,CAAC;IAAC,KAAK,IAAI,IAAI,CAAC;IAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IAAC,kBAAkB,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,GAAG,WAAW,CAAC;IAAC,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE;8BACrL;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE;QAAE,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,KAAK,IAAI,IAAI,CAAA;KAAE,CAAC;IAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,kBAAkB,CAAA;CAAE;6BAC3J,kBAAkB,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG;QAAE,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;KAAE,CAAA;CAAE;6BAC/E,kBAAkB,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG;QAAE,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;QAAC,QAAQ,CAAC,aAAa,EAAE,kBAAkB,CAAC;QAAC,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAA;KAAE,CAAA;CAAE;2BACpM,cAAc,GAAG,cAAc;0BAC/B;IAAE,KAAK,CAAC,GAAG,EAAE,YAAY,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE"}
1
+ {"version":3,"file":"stage-context.d.ts","sourceRoot":"","sources":["../src/stage-context.js"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@econ-v1/rpc",
3
- "version": "7.5.0",
3
+ "version": "7.5.2",
4
4
  "description": "Typed runtime and contracts for Node client stage-to-kernel RPC",
5
5
  "license": "MIT OR Apache-2.0",
6
6
  "author": "Node contributors",
@@ -56,7 +56,7 @@
56
56
  "access": "public"
57
57
  },
58
58
  "dependencies": {
59
- "@econ-v1/domain": "7.5.0",
60
- "@econ-v1/ports": "7.5.0"
59
+ "@econ-v1/domain": "7.5.2",
60
+ "@econ-v1/ports": "7.5.2"
61
61
  }
62
62
  }
@@ -0,0 +1,79 @@
1
+ // @ts-check
2
+
3
+ /**
4
+ * The browser ↔ node hop for capability calls a stage starts (ADR-077).
5
+ *
6
+ * The shell puts a fresh `browser_turn_id` on the object payload of each
7
+ * `ctx.invokeCapability` call and times the call. A provider that adopts the id
8
+ * echoes it with its own handler time, `browser_turn_node_ms`, at the top level
9
+ * of its result. The shell then sends one record through the shell-owned
10
+ * command below; the kernel forwards it to the API Store's
11
+ * `core.api_store.llm.calls.record_turn_browser_rtt` as the paired device, not
12
+ * as the stage. The field names are the cross-repo contract and must not drift.
13
+ */
14
+
15
+ /** Shell → kernel. Not exposed to stages: the shell's port only. */
16
+ export const BROWSER_TURN_RECORD_COMMAND = "browser-turn.record.v1";
17
+ /** Owned by the API Store; granted to every paired browser in the base scopes. */
18
+ export const BROWSER_TURN_RECORD_CAPABILITY = "core.api_store.llm.calls.record_turn_browser_rtt";
19
+
20
+ /** 16 random bytes as exactly 32 lowercase hex characters. */
21
+ const BROWSER_TURN_ID_PATTERN = /^[0-9a-f]{32}$/u;
22
+ /** Upper bound of both millisecond figures, as the API Store validates them. */
23
+ const BROWSER_TURN_MAX_MS = 3_600_000;
24
+ const APP_NAME_MAX = 64;
25
+ const APP_TITLE_MAX = 80;
26
+ const RECORD_FIELDS = new Set(["browser_turn_id", "browser_rtt_ms", "browser_turn_node_ms", "app_name", "app_title"]);
27
+
28
+ /**
29
+ * @typedef {{
30
+ * readonly browser_turn_id: string,
31
+ * readonly browser_rtt_ms: number,
32
+ * readonly browser_turn_node_ms: number,
33
+ * readonly app_name: string,
34
+ * readonly app_title?: string,
35
+ * }} BrowserTurnRecord
36
+ */
37
+
38
+ /** @param {unknown} value @returns {value is string} */
39
+ function isBrowserTurnId(value) {
40
+ return typeof value === "string" && BROWSER_TURN_ID_PATTERN.test(value);
41
+ }
42
+
43
+ /** @param {unknown} value @returns {value is number} */
44
+ function isBrowserTurnMs(value) {
45
+ return Number.isInteger(value) && /** @type {number} */ (value) >= 0 && /** @type {number} */ (value) <= BROWSER_TURN_MAX_MS;
46
+ }
47
+
48
+ /**
49
+ * The exact record the API Store accepts, or `undefined`. Unknown keys refuse
50
+ * the whole record: the command boundary forwards nothing it did not check.
51
+ * @param {unknown} value
52
+ * @returns {BrowserTurnRecord | undefined}
53
+ */
54
+ export function parseBrowserTurnRecord(value) {
55
+ if (typeof value !== "object" || value === null || Array.isArray(value))
56
+ return undefined;
57
+ const input = /** @type {Record<string, unknown>} */ (value);
58
+ if (Object.keys(input).some((key) => !RECORD_FIELDS.has(key)))
59
+ return undefined;
60
+ const { app_name: appName, app_title: appTitle, browser_rtt_ms: rttMs, browser_turn_id: turnId, browser_turn_node_ms: nodeMs } = input;
61
+ if (!isBrowserTurnId(turnId) || !isBrowserTurnMs(rttMs) || !isBrowserTurnMs(nodeMs))
62
+ return undefined;
63
+ if (!isBoundedText(appName, APP_NAME_MAX))
64
+ return undefined;
65
+ if (appTitle !== undefined && !isBoundedText(appTitle, APP_TITLE_MAX))
66
+ return undefined;
67
+ return {
68
+ browser_turn_id: turnId,
69
+ browser_rtt_ms: rttMs,
70
+ browser_turn_node_ms: nodeMs,
71
+ app_name: appName,
72
+ ...(appTitle === undefined ? {} : { app_title: appTitle }),
73
+ };
74
+ }
75
+
76
+ /** @param {unknown} value @param {number} max @returns {value is string} */
77
+ function isBoundedText(value, max) {
78
+ return typeof value === "string" && value.length >= 1 && value.length <= max;
79
+ }
@@ -22,6 +22,7 @@ const DOMAIN_COPY = {
22
22
  invalid_payload: { message: "Some of those details weren't accepted.", showRetry: false },
23
23
  invalid_request: { message: "Your node couldn't understand that request.", showRetry: false },
24
24
  not_found: { message: "That isn't here any more.", showRetry: false },
25
+ page_changed: { message: "The original page is no longer available. Ask again from the page you want to inspect.", showRetry: false },
25
26
  scope_unavailable: { message: "There's nothing to look at there right now.", showRetry: true },
26
27
  script_timeout: { message: "That script took too long and was stopped.", showRetry: false },
27
28
  script_unavailable: { message: "Scripts can't run in this tab right now.", showRetry: true },
package/src/index.js CHANGED
@@ -108,6 +108,7 @@
108
108
  /** @typedef {import("./onboarding/onboarding-contract.js").OnboardingView} OnboardingView */
109
109
  /** @typedef {import("./node-app-memory-contract.js").NodeAppMemoryDetailQueryParams} NodeAppMemoryDetailQueryParams */
110
110
  /** @typedef {import("./apps-lifecycle-contract.js").AppsLifecyclePinCommandPayload} AppsLifecyclePinCommandPayload */
111
+ /** @typedef {import("./browser-turn-contract.js").BrowserTurnRecord} BrowserTurnRecord */
111
112
  /** @typedef {import("./l402-enforcement-contract.js").L402Enforcement} L402Enforcement */
112
113
  /** @typedef {import("./l402-enforcement-contract.js").L402EnforcementRow} L402EnforcementRow */
113
114
  /** @typedef {import("./l402-enforcement-contract.js").L402EnforcementSource} L402EnforcementSource */
@@ -207,6 +208,7 @@ export { DEFAULT_REQUEST_TIMEOUT_MS, KernelRpcTimeoutError, MessagePortKernelRpc
207
208
  export { SubscriptionStateCell } from "./subscription-state.js";
208
209
  export { NODE_APP_LIFECYCLE_COMMAND, NODE_APP_MEMORY_CAPTURE_COMMAND, NODE_APP_MEMORY_DETAIL_QUERY, NODE_APP_MEMORY_DOWNLOAD_COMMAND, NODE_APP_MEMORY_LIST_QUERY, NODE_APP_MEMORY_OVERVIEW_QUERY, NODE_APP_MEMORY_STATUS_COMMAND } from "./node-app-memory-contract.js";
209
210
  export { APPS_LIFECYCLE_PIN_COMMAND, APPS_LIFECYCLE_QUERY } from "./apps-lifecycle-contract.js";
211
+ export { BROWSER_TURN_RECORD_CAPABILITY, BROWSER_TURN_RECORD_COMMAND, parseBrowserTurnRecord } from "./browser-turn-contract.js";
210
212
  export { CLIENT_SERVICES_RETRY_COMMAND } from "./client-services-contract.js";
211
213
  export { DEVTOOLS_GRANT } from "./grants-contract.js";
212
214
  export { HOST_CONTEXT_MAX_BYTES, validateHostContextView } from "./host-context-contract.js";
@@ -29,8 +29,11 @@
29
29
  * readonly composition?: StageComposition,
30
30
  * readonly stage: StageHost
31
31
  * }} StageContextShared */
32
- /** @typedef {{ open(): void, close(): void, readonly isOpen: boolean, onVisibilityChange(cb: (open: boolean) => void): Unsubscribe, setStatus(text: string): void, setBadge(count: number): void }} AssistantPanelHost */
33
- /** @typedef {{ navigate(path: string): void, readonly root: Element, readonly context: { set(view: object): void, clear(): void }, readonly panel?: AssistantPanelHost }} StageHostShared */
32
+ /** @typedef {{ open(): void, close(): void, readonly isOpen: boolean, onVisibilityChange(cb: (open: boolean) => void): Unsubscribe, setStatus(text: string): void, setBadge(count: number): void, mountHeader?(header: HTMLElement): Unsubscribe|undefined, mountActions?(actions: HTMLElement): Unsubscribe|undefined }} AssistantPanelHost */
33
+ /** @typedef {{status:"excluded"|"collecting"|"ready"|"partial"|"unavailable",snapshot:unknown}} AgentPageContextResult */
34
+ /** @typedef {{readonly tabId:string,prepareTurn(conversationId:string):Promise<void>,executeAuthorized(name:string,args:Record<string,unknown>,target:{nodeId:string,pageId:string,navigationRevision:number},verify:()=>Promise<void>):Promise<unknown>,setConversation(selection:{conversationId:string,allowed:boolean,active:boolean}):void,subscribe(listener:(result:AgentPageContextResult)=>void):Unsubscribe,captureForSend():Promise<AgentPageContextResult>,readTarget():Promise<{nodeId:string,pageId:string,navigationRevision:number}|null>}} AgentPageContextHost */
35
+ /** @typedef {{read():unknown,activate(provider:()=>unknown):Unsubscribe,current(view:"stage"|"widget"):unknown,register(view:"stage"|"widget",provider:()=>unknown,releaseDraft?:(current:unknown,accepted:unknown)=>unknown):Unsubscribe,transfer(from:"stage"|"widget",to:"stage"|"widget"):boolean,cancelTransfersFrom?(from:"stage"|"widget"):void,pending(view:"stage"|"widget"):{id:number,state:unknown}|null,subscribe(view:"stage"|"widget",listener:()=>void):Unsubscribe,acknowledge(view:"stage"|"widget",id:number):boolean}} AgentViewWorkspace */
36
+ /** @typedef {{ readonly assistantWorkspace?: AgentViewWorkspace, readonly pageContext?: AgentPageContextHost, navigate(path: string): void, readonly root: Element, readonly context: { set(view: object): void, clear(): void }, readonly panel?: AssistantPanelHost }} StageHostShared */
34
37
  /** @typedef {StageContextShared & { readonly host: StageHostShared & { readonly uiApi: 1 } }} StageContextV1 */
35
38
  /** @typedef {StageContextShared & { readonly host: StageHostShared & { readonly dialogs: DialogCenter, readonly modelPicker: ModelPickerCenter, readonly systemNotices: SystemNoticeCenter, readonly uiApi: 2 } }} StageContextV2 */
36
39
  /** @typedef {StageContextV1 | StageContextV2} StageContext */