@immediately-run/sandbox-protocol 0.10.0 → 0.10.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.
package/README.md CHANGED
@@ -31,7 +31,7 @@ dependency bump.
31
31
  | `@immediately-run/sandbox-protocol` | the format version + the snapshot types. **No constants** — importing the root must not be a way to reach the other side's vocabulary |
32
32
 
33
33
  **Two modules, not a union.** The sides speak overlapping but different subsets — 34
34
- wire names in the frame, 71 in the SDK, 18 shared. 53 are SDK-only because the frame
34
+ wire names in the frame, 73 in the SDK, 18 shared. 55 are SDK-only because the frame
35
35
  merely *relays* them and the host is the other end (the R3-274a cross-repo audit). Each
36
36
  repo's own gate asserts its module covers *exactly* its extracted wire surface, so a
37
37
  union module would fail there, far from its cause.
package/dist/index.js CHANGED
@@ -12,7 +12,7 @@
12
12
  // repo's own gate compares against
13
13
  //
14
14
  // The two sides speak overlapping but DIFFERENT subsets — 34 wire names in the frame,
15
- // 71 in the SDK, 18 shared; 53 are SDK-only because the frame merely relays them and
15
+ // 73 in the SDK, 18 shared; 55 are SDK-only because the frame merely relays them and
16
16
  // the host is the other end. (These four counts are ASSERTED against the descriptors by
17
17
  // `test/protocol.test.ts` — they are shipped in `dist/index.d.ts`, so a reader downloads
18
18
  // them, and they had drifted to 57/39 because nothing checked.) Hence a module per side:
package/dist/sandbox.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  // GENERATED by scripts/generate.mjs — DO NOT EDIT.
3
3
  // Source of truth: src/descriptors.protocol.mjs (@immediately-run/sandbox-protocol)
4
- // descriptorsHash: 1d323f9bbbe8f104
4
+ // descriptorsHash: f6a5d01cad6fc4ab
5
5
  //
6
6
  // The sandbox↔SDK wire vocabulary (PLATFORM_LAYERING_SPEC §2 / S1). Import the
7
7
  // constants instead of writing the string: a rename then has ONE edit site and
package/dist/sdk.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /** Every wire name this side speaks, as a union. */
2
- export type WireName = 'api-catalog' | 'auth-state' | 'chrome-state' | 'compile' | 'debug-enabled' | 'debug-log' | 'debug-query' | 'debug-query-result' | 'diagnostics' | 'dnd-cancel' | 'dropped-item' | 'editor-context' | 'form-factor' | 'fs-change' | 'host-attention' | 'invitations' | 'launch-dismiss' | 'launch-ended' | 'llm-provider' | 'metadata-update' | 'mount-add' | 'mount-remove' | 'protocol-analytics' | 'protocol-contribute' | 'protocol-dnd' | 'protocol-editor' | 'protocol-feed' | 'protocol-fetch' | 'protocol-ipc' | 'protocol-launch' | 'protocol-llm' | 'protocol-openrepo' | 'protocol-recents' | 'protocol-secrets' | 'protocol-settings' | 'protocol-spaces' | 'protocol-task' | 'protocol-theme' | 'protocol-vcs' | 'region-message' | 'region-visibility' | 'request-api-catalog' | 'request-auth-state' | 'request-chrome-state' | 'request-debug-enabled' | 'request-diagnostics' | 'request-editor-context' | 'request-form-factor' | 'request-handshake' | 'request-host-attention' | 'request-invitations' | 'request-llm-provider' | 'request-mounts' | 'request-region-visibility' | 'request-secrets-metadata' | 'request-session-mounts' | 'request-theme' | 'request-theme-catalog' | 'request-vcs-state' | 'request-workspace' | 'sdk-handshake' | 'secrets-metadata' | 'session-mounts' | 'task-cancel' | 'task-complete' | 'task-input' | 'theme' | 'theme-catalog' | 'urlchange' | 'vcs-state' | 'workspace';
2
+ export type WireName = 'api-catalog' | 'auth-state' | 'chrome-state' | 'compile' | 'debug-enabled' | 'debug-log' | 'debug-query' | 'debug-query-result' | 'diagnostics' | 'dnd-cancel' | 'dropped-item' | 'editor-context' | 'form-factor' | 'fs-change' | 'host-attention' | 'invitations' | 'launch-dismiss' | 'launch-ended' | 'llm-provider' | 'metadata-update' | 'mount-add' | 'mount-remove' | 'protocol-analytics' | 'protocol-contribute' | 'protocol-dnd' | 'protocol-editor' | 'protocol-feed' | 'protocol-fetch' | 'protocol-ipc' | 'protocol-launch' | 'protocol-llm' | 'protocol-localstore' | 'protocol-openlink' | 'protocol-openrepo' | 'protocol-recents' | 'protocol-secrets' | 'protocol-settings' | 'protocol-spaces' | 'protocol-task' | 'protocol-theme' | 'protocol-vcs' | 'region-message' | 'region-visibility' | 'request-api-catalog' | 'request-auth-state' | 'request-chrome-state' | 'request-debug-enabled' | 'request-diagnostics' | 'request-editor-context' | 'request-form-factor' | 'request-handshake' | 'request-host-attention' | 'request-invitations' | 'request-llm-provider' | 'request-mounts' | 'request-region-visibility' | 'request-secrets-metadata' | 'request-session-mounts' | 'request-theme' | 'request-theme-catalog' | 'request-vcs-state' | 'request-workspace' | 'sdk-handshake' | 'secrets-metadata' | 'session-mounts' | 'task-cancel' | 'task-complete' | 'task-input' | 'theme' | 'theme-catalog' | 'urlchange' | 'vcs-state' | 'workspace';
3
3
  /** `api-catalog` — push · host->app. polled with `request-api-catalog`. */
4
4
  export declare const API_CATALOG = "api-catalog";
5
5
  /** Read off this message today: `methods`. */
@@ -218,6 +218,14 @@ export interface ProtocolLlmChatParams {
218
218
  responseFormat?: "json" | "text" | undefined;
219
219
  tools?: Array<unknown> | undefined;
220
220
  }
221
+ /** `protocol-localstore` — request · app->host. */
222
+ export declare const PROTOCOL_LOCALSTORE = "protocol-localstore";
223
+ /** `protocol-openlink` — request · app->host. */
224
+ export declare const PROTOCOL_OPENLINK = "protocol-openlink";
225
+ /** Params of `protocol-openlink` method `open`. */
226
+ export interface ProtocolOpenlinkOpenParams {
227
+ url: string;
228
+ }
221
229
  /** `protocol-openrepo` — request · app->host. */
222
230
  export declare const PROTOCOL_OPENREPO = "protocol-openrepo";
223
231
  /** Params of `protocol-openrepo` method `open`. */
@@ -408,6 +416,8 @@ export declare const WIRE_NAMES: {
408
416
  readonly PROTOCOL_IPC: "protocol-ipc";
409
417
  readonly PROTOCOL_LAUNCH: "protocol-launch";
410
418
  readonly PROTOCOL_LLM: "protocol-llm";
419
+ readonly PROTOCOL_LOCALSTORE: "protocol-localstore";
420
+ readonly PROTOCOL_OPENLINK: "protocol-openlink";
411
421
  readonly PROTOCOL_OPENREPO: "protocol-openrepo";
412
422
  readonly PROTOCOL_RECENTS: "protocol-recents";
413
423
  readonly PROTOCOL_SECRETS: "protocol-secrets";
package/dist/sdk.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  // GENERATED by scripts/generate.mjs — DO NOT EDIT.
3
3
  // Source of truth: src/descriptors.protocol.mjs (@immediately-run/sandbox-protocol)
4
- // descriptorsHash: 1d323f9bbbe8f104
4
+ // descriptorsHash: f6a5d01cad6fc4ab
5
5
  //
6
6
  // The sandbox↔SDK wire vocabulary (PLATFORM_LAYERING_SPEC §2 / S1). Import the
7
7
  // constants instead of writing the string: a rename then has ONE edit site and
@@ -9,8 +9,8 @@
9
9
  // that has a declared shape; a name handled as `any` today gets its read field
10
10
  // list in the doc comment instead (R3-274e is where those grow real types).
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.REQUEST_HOST_ATTENTION = exports.REQUEST_HANDSHAKE = exports.REQUEST_FORM_FACTOR = exports.REQUEST_EDITOR_CONTEXT = exports.REQUEST_DIAGNOSTICS = exports.REQUEST_DEBUG_ENABLED = exports.REQUEST_CHROME_STATE = exports.REQUEST_AUTH_STATE = exports.REQUEST_API_CATALOG = exports.REGION_VISIBILITY = exports.REGION_MESSAGE = exports.PROTOCOL_VCS = exports.PROTOCOL_THEME = exports.PROTOCOL_TASK = exports.PROTOCOL_SPACES = exports.PROTOCOL_SETTINGS = exports.PROTOCOL_SECRETS = exports.PROTOCOL_RECENTS = exports.PROTOCOL_OPENREPO = exports.PROTOCOL_LLM = exports.PROTOCOL_LAUNCH = exports.PROTOCOL_IPC = exports.PROTOCOL_FETCH = exports.PROTOCOL_FEED = exports.PROTOCOL_EDITOR = exports.PROTOCOL_DND = exports.PROTOCOL_CONTRIBUTE = exports.PROTOCOL_ANALYTICS = exports.MOUNT_REMOVE = exports.MOUNT_ADD = exports.METADATA_UPDATE = exports.LLM_PROVIDER = exports.LAUNCH_ENDED = exports.LAUNCH_DISMISS = exports.INVITATIONS = exports.HOST_ATTENTION = exports.FS_CHANGE = exports.FORM_FACTOR = exports.EDITOR_CONTEXT = exports.DROPPED_ITEM = exports.DND_CANCEL = exports.DIAGNOSTICS = exports.DEBUG_QUERY_RESULT = exports.DEBUG_QUERY = exports.DEBUG_LOG = exports.DEBUG_ENABLED = exports.COMPILE = exports.CHROME_STATE = exports.AUTH_STATE = exports.API_CATALOG = void 0;
13
- exports.WIRE_NAMES = exports.WORKSPACE = exports.VCS_STATE = exports.URLCHANGE = exports.THEME_CATALOG = exports.THEME = exports.TASK_INPUT = exports.TASK_COMPLETE = exports.TASK_CANCEL = exports.SESSION_MOUNTS = exports.SECRETS_METADATA = exports.SDK_HANDSHAKE = exports.REQUEST_WORKSPACE = exports.REQUEST_VCS_STATE = exports.REQUEST_THEME_CATALOG = exports.REQUEST_THEME = exports.REQUEST_SESSION_MOUNTS = exports.REQUEST_SECRETS_METADATA = exports.REQUEST_REGION_VISIBILITY = exports.REQUEST_MOUNTS = exports.REQUEST_LLM_PROVIDER = exports.REQUEST_INVITATIONS = void 0;
12
+ exports.REQUEST_FORM_FACTOR = exports.REQUEST_EDITOR_CONTEXT = exports.REQUEST_DIAGNOSTICS = exports.REQUEST_DEBUG_ENABLED = exports.REQUEST_CHROME_STATE = exports.REQUEST_AUTH_STATE = exports.REQUEST_API_CATALOG = exports.REGION_VISIBILITY = exports.REGION_MESSAGE = exports.PROTOCOL_VCS = exports.PROTOCOL_THEME = exports.PROTOCOL_TASK = exports.PROTOCOL_SPACES = exports.PROTOCOL_SETTINGS = exports.PROTOCOL_SECRETS = exports.PROTOCOL_RECENTS = exports.PROTOCOL_OPENREPO = exports.PROTOCOL_OPENLINK = exports.PROTOCOL_LOCALSTORE = exports.PROTOCOL_LLM = exports.PROTOCOL_LAUNCH = exports.PROTOCOL_IPC = exports.PROTOCOL_FETCH = exports.PROTOCOL_FEED = exports.PROTOCOL_EDITOR = exports.PROTOCOL_DND = exports.PROTOCOL_CONTRIBUTE = exports.PROTOCOL_ANALYTICS = exports.MOUNT_REMOVE = exports.MOUNT_ADD = exports.METADATA_UPDATE = exports.LLM_PROVIDER = exports.LAUNCH_ENDED = exports.LAUNCH_DISMISS = exports.INVITATIONS = exports.HOST_ATTENTION = exports.FS_CHANGE = exports.FORM_FACTOR = exports.EDITOR_CONTEXT = exports.DROPPED_ITEM = exports.DND_CANCEL = exports.DIAGNOSTICS = exports.DEBUG_QUERY_RESULT = exports.DEBUG_QUERY = exports.DEBUG_LOG = exports.DEBUG_ENABLED = exports.COMPILE = exports.CHROME_STATE = exports.AUTH_STATE = exports.API_CATALOG = void 0;
13
+ exports.WIRE_NAMES = exports.WORKSPACE = exports.VCS_STATE = exports.URLCHANGE = exports.THEME_CATALOG = exports.THEME = exports.TASK_INPUT = exports.TASK_COMPLETE = exports.TASK_CANCEL = exports.SESSION_MOUNTS = exports.SECRETS_METADATA = exports.SDK_HANDSHAKE = exports.REQUEST_WORKSPACE = exports.REQUEST_VCS_STATE = exports.REQUEST_THEME_CATALOG = exports.REQUEST_THEME = exports.REQUEST_SESSION_MOUNTS = exports.REQUEST_SECRETS_METADATA = exports.REQUEST_REGION_VISIBILITY = exports.REQUEST_MOUNTS = exports.REQUEST_LLM_PROVIDER = exports.REQUEST_INVITATIONS = exports.REQUEST_HOST_ATTENTION = exports.REQUEST_HANDSHAKE = void 0;
14
14
  /** `api-catalog` — push · host->app. polled with `request-api-catalog`. */
15
15
  exports.API_CATALOG = 'api-catalog';
16
16
  /** Read off this message today: `methods`. */
@@ -86,6 +86,10 @@ exports.PROTOCOL_IPC = 'protocol-ipc';
86
86
  exports.PROTOCOL_LAUNCH = 'protocol-launch';
87
87
  /** `protocol-llm` — stream · app->host. */
88
88
  exports.PROTOCOL_LLM = 'protocol-llm';
89
+ /** `protocol-localstore` — request · app->host. */
90
+ exports.PROTOCOL_LOCALSTORE = 'protocol-localstore';
91
+ /** `protocol-openlink` — request · app->host. */
92
+ exports.PROTOCOL_OPENLINK = 'protocol-openlink';
89
93
  /** `protocol-openrepo` — request · app->host. */
90
94
  exports.PROTOCOL_OPENREPO = 'protocol-openrepo';
91
95
  /** `protocol-recents` — request · app->host. */
@@ -206,6 +210,8 @@ exports.WIRE_NAMES = {
206
210
  PROTOCOL_IPC: exports.PROTOCOL_IPC,
207
211
  PROTOCOL_LAUNCH: exports.PROTOCOL_LAUNCH,
208
212
  PROTOCOL_LLM: exports.PROTOCOL_LLM,
213
+ PROTOCOL_LOCALSTORE: exports.PROTOCOL_LOCALSTORE,
214
+ PROTOCOL_OPENLINK: exports.PROTOCOL_OPENLINK,
209
215
  PROTOCOL_OPENREPO: exports.PROTOCOL_OPENREPO,
210
216
  PROTOCOL_RECENTS: exports.PROTOCOL_RECENTS,
211
217
  PROTOCOL_SECRETS: exports.PROTOCOL_SECRETS,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@immediately-run/sandbox-protocol",
3
- "version": "0.10.0",
3
+ "version": "0.10.2",
4
4
  "description": "The sandbox<->SDK wire protocol: ONE descriptor set, projected into the wire-name constants, the payload types, and the per-side snapshots both repos gate against (PLATFORM_LAYERING_SPEC S1). Consumed by sandbox and immediately-run-sdk so a wire change is a version bump, not a hand-copied file.",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {
@@ -1476,6 +1476,40 @@
1476
1476
  "src/llm.ts"
1477
1477
  ]
1478
1478
  },
1479
+ "protocol-localstore": {
1480
+ "kind": "request",
1481
+ "direction": "app->host",
1482
+ "methods": {
1483
+ "<dynamic>": {
1484
+ "payload": {
1485
+ "type": "Record<string, unknown>"
1486
+ }
1487
+ }
1488
+ },
1489
+ "sites": [
1490
+ "src/mounts.ts"
1491
+ ]
1492
+ },
1493
+ "protocol-openlink": {
1494
+ "kind": "request",
1495
+ "direction": "app->host",
1496
+ "methods": {
1497
+ "open": {
1498
+ "payload": {
1499
+ "fields": [
1500
+ {
1501
+ "name": "url",
1502
+ "optional": false,
1503
+ "type": "string"
1504
+ }
1505
+ ]
1506
+ }
1507
+ }
1508
+ },
1509
+ "sites": [
1510
+ "src/openExternal.ts"
1511
+ ]
1512
+ },
1479
1513
  "protocol-openrepo": {
1480
1514
  "kind": "request",
1481
1515
  "direction": "app->host",
@@ -2496,6 +2530,8 @@
2496
2530
  "ipc",
2497
2531
  "launch",
2498
2532
  "llm",
2533
+ "localstore",
2534
+ "openlink",
2499
2535
  "openrepo",
2500
2536
  "recents",
2501
2537
  "secrets",