@xemahq/worker-runtime-opencode 0.5.4 → 0.6.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.
package/dist/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
- export { OpencodeWorkerRuntime, OPENCODE_CONNECTOR_KIND, type OpencodePodSpec, } from './lib/opencode-worker-runtime';
2
- export { createOpencodeWorkerRuntime } from './lib/factory';
1
+ export { OpencodeWorkerRuntimeAdapter, OPENCODE_CONNECTOR_KIND, type OpencodePodSpec, } from './lib/opencode-worker-runtime';
2
+ export { createOpencodeWorkerRuntimeAdapter } from './lib/factory';
3
+ export { compileOpencodeRuntimeProfile } from './lib/runtime-profile-compiler';
4
+ export { OPENCODE_NATIVE_PERMISSION_REFS, OpencodeRuntimeProfileSchema, type OpencodeNativePermissionRef, type OpencodeRuntimeProfileSettings, } from './lib/runtime-profile';
3
5
  export { buildOpencodeSessionBundle, computeSessionBindingRevision, computeStaticBundleFingerprint, decodeOpencodeSessionBundle, type OpencodeBundleSubAgent, type OpencodeSessionBundlePayload, } from './lib/session-bundle';
4
6
  export type { BundleCallerContext, OpencodeRuntimeConfig, WorkerRef, } from './lib/worker-ref';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,KAAK,eAAe,GACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,2BAA2B,EAAE,MAAM,eAAe,CAAC;AAC5D,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,8BAA8B,EAC9B,2BAA2B,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,GAClC,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,SAAS,GACV,MAAM,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AASA,OAAO,EACL,4BAA4B,EAC5B,uBAAuB,EACvB,KAAK,eAAe,GACrB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,kCAAkC,EAAE,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,gCAAgC,CAAC;AAC/E,OAAO,EACL,+BAA+B,EAC/B,4BAA4B,EAC5B,KAAK,2BAA2B,EAChC,KAAK,8BAA8B,GACpC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAC7B,8BAA8B,EAC9B,2BAA2B,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,4BAA4B,GAClC,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,mBAAmB,EACnB,qBAAqB,EACrB,SAAS,GACV,MAAM,kBAAkB,CAAC"}
package/dist/index.js CHANGED
@@ -1,11 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.decodeOpencodeSessionBundle = exports.computeStaticBundleFingerprint = exports.computeSessionBindingRevision = exports.buildOpencodeSessionBundle = exports.createOpencodeWorkerRuntime = exports.OPENCODE_CONNECTOR_KIND = exports.OpencodeWorkerRuntime = void 0;
3
+ exports.decodeOpencodeSessionBundle = exports.computeStaticBundleFingerprint = exports.computeSessionBindingRevision = exports.buildOpencodeSessionBundle = exports.OpencodeRuntimeProfileSchema = exports.OPENCODE_NATIVE_PERMISSION_REFS = exports.compileOpencodeRuntimeProfile = exports.createOpencodeWorkerRuntimeAdapter = exports.OPENCODE_CONNECTOR_KIND = exports.OpencodeWorkerRuntimeAdapter = void 0;
4
4
  var opencode_worker_runtime_1 = require("./lib/opencode-worker-runtime");
5
- Object.defineProperty(exports, "OpencodeWorkerRuntime", { enumerable: true, get: function () { return opencode_worker_runtime_1.OpencodeWorkerRuntime; } });
5
+ Object.defineProperty(exports, "OpencodeWorkerRuntimeAdapter", { enumerable: true, get: function () { return opencode_worker_runtime_1.OpencodeWorkerRuntimeAdapter; } });
6
6
  Object.defineProperty(exports, "OPENCODE_CONNECTOR_KIND", { enumerable: true, get: function () { return opencode_worker_runtime_1.OPENCODE_CONNECTOR_KIND; } });
7
7
  var factory_1 = require("./lib/factory");
8
- Object.defineProperty(exports, "createOpencodeWorkerRuntime", { enumerable: true, get: function () { return factory_1.createOpencodeWorkerRuntime; } });
8
+ Object.defineProperty(exports, "createOpencodeWorkerRuntimeAdapter", { enumerable: true, get: function () { return factory_1.createOpencodeWorkerRuntimeAdapter; } });
9
+ var runtime_profile_compiler_1 = require("./lib/runtime-profile-compiler");
10
+ Object.defineProperty(exports, "compileOpencodeRuntimeProfile", { enumerable: true, get: function () { return runtime_profile_compiler_1.compileOpencodeRuntimeProfile; } });
11
+ var runtime_profile_1 = require("./lib/runtime-profile");
12
+ Object.defineProperty(exports, "OPENCODE_NATIVE_PERMISSION_REFS", { enumerable: true, get: function () { return runtime_profile_1.OPENCODE_NATIVE_PERMISSION_REFS; } });
13
+ Object.defineProperty(exports, "OpencodeRuntimeProfileSchema", { enumerable: true, get: function () { return runtime_profile_1.OpencodeRuntimeProfileSchema; } });
9
14
  var session_bundle_1 = require("./lib/session-bundle");
10
15
  Object.defineProperty(exports, "buildOpencodeSessionBundle", { enumerable: true, get: function () { return session_bundle_1.buildOpencodeSessionBundle; } });
11
16
  Object.defineProperty(exports, "computeSessionBindingRevision", { enumerable: true, get: function () { return session_bundle_1.computeSessionBindingRevision; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AASA,yEAIuC;AAHrC,gIAAA,qBAAqB,OAAA;AACrB,kIAAA,uBAAuB,OAAA;AAGzB,yCAA4D;AAAnD,sHAAA,2BAA2B,OAAA;AACpC,uDAO8B;AAN5B,4HAAA,0BAA0B,OAAA;AAC1B,+HAAA,6BAA6B,OAAA;AAC7B,gIAAA,8BAA8B,OAAA;AAC9B,6HAAA,2BAA2B,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AASA,yEAIuC;AAHrC,uIAAA,4BAA4B,OAAA;AAC5B,kIAAA,uBAAuB,OAAA;AAGzB,yCAAmE;AAA1D,6HAAA,kCAAkC,OAAA;AAC3C,2EAA+E;AAAtE,yIAAA,6BAA6B,OAAA;AACtC,yDAK+B;AAJ7B,kIAAA,+BAA+B,OAAA;AAC/B,+HAAA,4BAA4B,OAAA;AAI9B,uDAO8B;AAN5B,4HAAA,0BAA0B,OAAA;AAC1B,+HAAA,6BAA6B,OAAA;AAC7B,gIAAA,8BAA8B,OAAA;AAC9B,6HAAA,2BAA2B,OAAA"}
@@ -1,4 +1,4 @@
1
- import { OpencodeWorkerRuntime } from './opencode-worker-runtime';
1
+ import { OpencodeWorkerRuntimeAdapter } from './opencode-worker-runtime';
2
2
  import type { OpencodeRuntimeConfig } from './worker-ref';
3
- export declare function createOpencodeWorkerRuntime(config: OpencodeRuntimeConfig): OpencodeWorkerRuntime;
3
+ export declare function createOpencodeWorkerRuntimeAdapter(config: OpencodeRuntimeConfig): OpencodeWorkerRuntimeAdapter;
4
4
  //# sourceMappingURL=factory.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/lib/factory.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAQ1D,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,qBAAqB,GAC5B,qBAAqB,CAGvB"}
1
+ {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../src/lib/factory.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,4BAA4B,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AAQ1D,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,qBAAqB,GAC5B,4BAA4B,CAG9B"}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createOpencodeWorkerRuntime = createOpencodeWorkerRuntime;
3
+ exports.createOpencodeWorkerRuntimeAdapter = createOpencodeWorkerRuntimeAdapter;
4
4
  const opencode_worker_runtime_1 = require("./opencode-worker-runtime");
5
- function createOpencodeWorkerRuntime(config) {
5
+ function createOpencodeWorkerRuntimeAdapter(config) {
6
6
  validate(config);
7
- return new opencode_worker_runtime_1.OpencodeWorkerRuntime(config);
7
+ return new opencode_worker_runtime_1.OpencodeWorkerRuntimeAdapter(config);
8
8
  }
9
9
  function validate(config) {
10
10
  const ref = config.workerRef;
@@ -1 +1 @@
1
- {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/lib/factory.ts"],"names":[],"mappings":";;AAkBA,kEAKC;AAdD,uEAAkE;AASlE,SAAgB,2BAA2B,CACzC,MAA6B;IAE7B,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjB,OAAO,IAAI,+CAAqB,CAAC,MAAM,CAAC,CAAC;AAC3C,CAAC;AAED,SAAS,QAAQ,CAAC,MAA6B;IAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC;IAC7B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"factory.js","sourceRoot":"","sources":["../../src/lib/factory.ts"],"names":[],"mappings":";;AAkBA,gFAKC;AAdD,uEAAyE;AASzE,SAAgB,kCAAkC,CAChD,MAA6B;IAE7B,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjB,OAAO,IAAI,sDAA4B,CAAC,MAAM,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,QAAQ,CAAC,MAA6B;IAC7C,MAAM,GAAG,GAAG,MAAM,CAAC,SAAS,CAAC;IAC7B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAC;IAClF,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,EAAE,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IACrF,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,IAAI,EAAE,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAC7B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC;QAC7B,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;AACH,CAAC"}
@@ -1,4 +1,4 @@
1
- import { WorkerRuntimeKind, type BuildBundleInput, type BuildPodSpecInput, type SessionBundle, type WorkerRuntime, type WorkerRuntimeCapabilityBits } from '@xemahq/kernel-contracts/worker-runtime';
1
+ import { WorkerRuntimeKind, type BuildBundleInput, type BuildPodSpecInput, type RuntimeProfileCompilationContext, type RuntimeProfileContent, type RuntimeProfileProjection, type RuntimeProfileSchema, type SessionBundle, type WorkerRuntimeAdapter, type WorkerRuntimeCapabilityBits } from '@xemahq/kernel-contracts/worker-runtime';
2
2
  import type { AbstractMount } from '@xemahq/kernel-contracts/workspace-storage';
3
3
  import type { OpencodeRuntimeConfig } from './worker-ref';
4
4
  export declare const OPENCODE_CONNECTOR_KIND = "opencode-default";
@@ -14,7 +14,7 @@ export interface OpencodePodSpec {
14
14
  };
15
15
  readonly requestedCapabilities: BuildPodSpecInput['capabilities'];
16
16
  }
17
- export declare class OpencodeWorkerRuntime implements WorkerRuntime {
17
+ export declare class OpencodeWorkerRuntimeAdapter implements WorkerRuntimeAdapter {
18
18
  readonly kind = WorkerRuntimeKind.Opencode;
19
19
  readonly capabilities: WorkerRuntimeCapabilityBits;
20
20
  readonly connectorKindRequired = "opencode-default";
@@ -22,6 +22,8 @@ export declare class OpencodeWorkerRuntime implements WorkerRuntime {
22
22
  private workerRef;
23
23
  private caller;
24
24
  constructor(config: OpencodeRuntimeConfig);
25
+ runtimeProfileSchema(): RuntimeProfileSchema;
26
+ compileProfile(profile: RuntimeProfileContent, resolvedComposition: RuntimeProfileCompilationContext): RuntimeProfileProjection;
25
27
  buildPodSpec(input: BuildPodSpecInput): Promise<OpencodePodSpec>;
26
28
  buildSessionBundle(input: BuildBundleInput): Promise<SessionBundle>;
27
29
  applySessionBundle(bundle: SessionBundle): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"opencode-worker-runtime.d.ts","sourceRoot":"","sources":["../../src/lib/opencode-worker-runtime.ts"],"names":[],"mappings":"AAYA,OAAO,EAEL,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,2BAA2B,EACjC,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAOhF,OAAO,KAAK,EAAE,qBAAqB,EAAa,MAAM,cAAc,CAAC;AAYrE,eAAO,MAAM,uBAAuB,qBAAqB,CAAC;AAmC1D,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,MAAM,EAAE,SAAS,aAAa,EAAE,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAMzB,QAAQ,CAAC,YAAY,CAAC,EAAE;QACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;KACpC,CAAC;IACF,QAAQ,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,cAAc,CAAC,CAAC;CACnE;AAOD,qBAAa,qBAAsB,YAAW,aAAa;IACzD,QAAQ,CAAC,IAAI,8BAA8B;IAC3C,QAAQ,CAAC,YAAY,8BAAyB;IAC9C,QAAQ,CAAC,qBAAqB,sBAA2B;IACzD,QAAQ,CAAC,uBAAuB,QAAQ;IAExC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,MAAM,CAAkC;gBAEpC,MAAM,EAAE,qBAAqB;IAWzC,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IAwB1D,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;IA0BnE,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA8DxD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BtB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAe7B,OAAO,CAAC,WAAW;CAcpB"}
1
+ {"version":3,"file":"opencode-worker-runtime.d.ts","sourceRoot":"","sources":["../../src/lib/opencode-worker-runtime.ts"],"names":[],"mappings":"AAYA,OAAO,EAEL,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,gCAAgC,EACrC,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,2BAA2B,EACjC,MAAM,yCAAyC,CAAC;AACjD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAOhF,OAAO,KAAK,EAAE,qBAAqB,EAAa,MAAM,cAAc,CAAC;AAcrE,eAAO,MAAM,uBAAuB,qBAAqB,CAAC;AAmC1D,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/C,QAAQ,CAAC,MAAM,EAAE,SAAS,aAAa,EAAE,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAMzB,QAAQ,CAAC,YAAY,CAAC,EAAE;QACtB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;KACpC,CAAC;IACF,QAAQ,CAAC,qBAAqB,EAAE,iBAAiB,CAAC,cAAc,CAAC,CAAC;CACnE;AAOD,qBAAa,4BAA6B,YAAW,oBAAoB;IACvE,QAAQ,CAAC,IAAI,8BAA8B;IAC3C,QAAQ,CAAC,YAAY,8BAAyB;IAC9C,QAAQ,CAAC,qBAAqB,sBAA2B;IACzD,QAAQ,CAAC,uBAAuB,QAAQ;IAExC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,MAAM,CAAkC;gBAEpC,MAAM,EAAE,qBAAqB;IAKzC,oBAAoB,IAAI,oBAAoB;IAI5C,cAAc,CACZ,OAAO,EAAE,qBAAqB,EAC9B,mBAAmB,EAAE,gCAAgC,GACpD,wBAAwB;IAU3B,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,eAAe,CAAC;IAwB1D,kBAAkB,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;IA0BnE,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA8DxD,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IA4BtB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAe7B,OAAO,CAAC,WAAW;CAcpB"}
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.OpencodeWorkerRuntime = exports.OPENCODE_CONNECTOR_KIND = void 0;
3
+ exports.OpencodeWorkerRuntimeAdapter = exports.OPENCODE_CONNECTOR_KIND = void 0;
4
4
  const worker_runtime_1 = require("@xemahq/kernel-contracts/worker-runtime");
5
5
  const session_bundle_1 = require("./session-bundle");
6
+ const runtime_profile_compiler_1 = require("./runtime-profile-compiler");
7
+ const runtime_profile_1 = require("./runtime-profile");
6
8
  exports.OPENCODE_CONNECTOR_KIND = 'opencode-default';
7
9
  const APPLY_SESSION_BUNDLE_TIMEOUT_MS = 120_000;
8
10
  const OPENCODE_CAPABILITIES = {
@@ -20,7 +22,7 @@ const OPENCODE_CAPABILITIES = {
20
22
  gatewayAttributedCalls: true,
21
23
  llmEndpointOverride: true,
22
24
  };
23
- class OpencodeWorkerRuntime {
25
+ class OpencodeWorkerRuntimeAdapter {
24
26
  kind = worker_runtime_1.WorkerRuntimeKind.Opencode;
25
27
  capabilities = OPENCODE_CAPABILITIES;
26
28
  connectorKindRequired = exports.OPENCODE_CONNECTOR_KIND;
@@ -31,6 +33,12 @@ class OpencodeWorkerRuntime {
31
33
  this.workerRef = config.workerRef;
32
34
  this.caller = config.caller;
33
35
  }
36
+ runtimeProfileSchema() {
37
+ return runtime_profile_1.OpencodeRuntimeProfileSchema;
38
+ }
39
+ compileProfile(profile, resolvedComposition) {
40
+ return (0, runtime_profile_compiler_1.compileOpencodeRuntimeProfile)(profile, resolvedComposition);
41
+ }
34
42
  buildPodSpec(input) {
35
43
  const spec = {
36
44
  runtimeKind: this.kind,
@@ -95,7 +103,7 @@ class OpencodeWorkerRuntime {
95
103
  });
96
104
  if (!response.ok) {
97
105
  const text = await safeReadText(response);
98
- throw new Error(`OpencodeWorkerRuntime.pause failed: HTTP ${response.status} from ${url} — ${text}`);
106
+ throw new Error(`OpencodeWorkerRuntimeAdapter.pause failed: HTTP ${response.status} from ${url} — ${text}`);
99
107
  }
100
108
  }
101
109
  async resume() {
@@ -107,7 +115,7 @@ class OpencodeWorkerRuntime {
107
115
  });
108
116
  if (!response.ok) {
109
117
  const text = await safeReadText(response);
110
- throw new Error(`OpencodeWorkerRuntime.resume failed: HTTP ${response.status} from ${url} — ${text}`);
118
+ throw new Error(`OpencodeWorkerRuntimeAdapter.resume failed: HTTP ${response.status} from ${url} — ${text}`);
111
119
  }
112
120
  }
113
121
  authHeaders() {
@@ -118,7 +126,7 @@ class OpencodeWorkerRuntime {
118
126
  };
119
127
  }
120
128
  }
121
- exports.OpencodeWorkerRuntime = OpencodeWorkerRuntime;
129
+ exports.OpencodeWorkerRuntimeAdapter = OpencodeWorkerRuntimeAdapter;
122
130
  function assertApplyResponseOk(parsed, payload) {
123
131
  if (parsed.unchanged === true)
124
132
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"opencode-worker-runtime.js","sourceRoot":"","sources":["../../src/lib/opencode-worker-runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opencode-worker-runtime.js","sourceRoot":"","sources":["../../src/lib/opencode-worker-runtime.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { type RuntimeProfileCompilationContext, type RuntimeProfileContent, type RuntimeProfileProjection } from '@xemahq/kernel-contracts/worker-runtime';
2
+ export declare function compileOpencodeRuntimeProfile(inputProfile: RuntimeProfileContent, resolvedComposition: RuntimeProfileCompilationContext): RuntimeProfileProjection;
3
+ //# sourceMappingURL=runtime-profile-compiler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-profile-compiler.d.ts","sourceRoot":"","sources":["../../src/lib/runtime-profile-compiler.ts"],"names":[],"mappings":"AAIA,OAAO,EAGL,KAAK,gCAAgC,EACrC,KAAK,qBAAqB,EAC1B,KAAK,wBAAwB,EAC9B,MAAM,yCAAyC,CAAC;AAmBjD,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,qBAAqB,EACnC,mBAAmB,EAAE,gCAAgC,GACpD,wBAAwB,CAwC1B"}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.compileOpencodeRuntimeProfile = compileOpencodeRuntimeProfile;
4
+ const content_address_1 = require("@xemahq/kernel-contracts/content-address");
5
+ const worker_runtime_1 = require("@xemahq/kernel-contracts/worker-runtime");
6
+ const runtime_profile_1 = require("./runtime-profile");
7
+ function compileOpencodeRuntimeProfile(inputProfile, resolvedComposition) {
8
+ const profile = runtime_profile_1.OpencodeRuntimeProfileSchema.parse(inputProfile);
9
+ assertCompositionProfile(profile, resolvedComposition);
10
+ const settings = profile.settings;
11
+ const restriction = parseNativeToolRestriction(resolvedComposition);
12
+ const authoredDecisions = new Map(profile.nativePermissionPolicy.entries.map((entry) => [
13
+ entry.nativeToolRef,
14
+ entry.decision,
15
+ ]));
16
+ const permission = {
17
+ '*': worker_runtime_1.NativePermissionDecision.Deny,
18
+ };
19
+ for (const nativeToolRef of runtime_profile_1.OPENCODE_NATIVE_PERMISSION_REFS) {
20
+ const authored = authoredDecisions.get(nativeToolRef) ?? worker_runtime_1.NativePermissionDecision.Deny;
21
+ permission[nativeToolRef] =
22
+ restriction === undefined || restriction.has(nativeToolRef)
23
+ ? authored
24
+ : worker_runtime_1.NativePermissionDecision.Deny;
25
+ }
26
+ return (0, content_address_1.deepFreezeCanonicalJson)({
27
+ schemaVersion: 1,
28
+ runtimeKind: worker_runtime_1.WorkerRuntimeKind.Opencode,
29
+ config: {
30
+ $schema: 'https://opencode.ai/config.json',
31
+ autoupdate: false,
32
+ share: 'disabled',
33
+ snapshot: settings.snapshot,
34
+ permission,
35
+ compaction: {
36
+ auto: settings.compaction.auto,
37
+ prune: settings.compaction.prune,
38
+ reserved: settings.compaction.reservedTokens,
39
+ },
40
+ },
41
+ });
42
+ }
43
+ function assertCompositionProfile(profile, resolvedComposition) {
44
+ if (!isRecord(resolvedComposition)) {
45
+ throw new TypeError('Resolved composition must be an object.');
46
+ }
47
+ if (Object.hasOwn(resolvedComposition, 'runtimeProjection')) {
48
+ throw new TypeError('Profile compilation requires the pre-projection resolved composition.');
49
+ }
50
+ if (!Object.hasOwn(resolvedComposition, 'runtimeProfile')) {
51
+ throw new TypeError('Resolved composition must contain its materialized runtimeProfile.');
52
+ }
53
+ const compositionProfile = runtime_profile_1.OpencodeRuntimeProfileSchema.parse(resolvedComposition.runtimeProfile);
54
+ if ((0, content_address_1.canonicalJsonStringify)(profile) !==
55
+ (0, content_address_1.canonicalJsonStringify)(compositionProfile)) {
56
+ throw new TypeError('Compiler profile must exactly match resolvedComposition.runtimeProfile.');
57
+ }
58
+ }
59
+ function parseNativeToolRestriction(resolvedComposition) {
60
+ if (!isRecord(resolvedComposition)) {
61
+ throw new TypeError('Resolved composition must be an object.');
62
+ }
63
+ const effectiveOverlay = resolvedComposition.effectiveOverlay;
64
+ if (!isRecord(effectiveOverlay)) {
65
+ throw new TypeError('Resolved composition must contain an effectiveOverlay object.');
66
+ }
67
+ const restriction = effectiveOverlay.nativeToolRestriction;
68
+ if (restriction === undefined) {
69
+ return undefined;
70
+ }
71
+ if (!isRecord(restriction) || restriction.kind !== 'allow-only') {
72
+ throw new TypeError('effectiveOverlay.nativeToolRestriction must use kind "allow-only".');
73
+ }
74
+ if (!Array.isArray(restriction.nativeToolRefs)) {
75
+ throw new TypeError('effectiveOverlay.nativeToolRestriction.nativeToolRefs must be an array.');
76
+ }
77
+ let previous;
78
+ const refs = new Set();
79
+ for (const ref of restriction.nativeToolRefs) {
80
+ if (typeof ref !== 'string' || !(0, runtime_profile_1.isOpencodeNativePermissionRef)(ref)) {
81
+ throw new TypeError(`Unsupported OpenCode native permission restriction ref "${String(ref)}". ` +
82
+ 'Xema capabilities and MCP tools are not OpenCode native permissions.');
83
+ }
84
+ if (previous !== undefined && ref <= previous) {
85
+ throw new TypeError('effectiveOverlay.nativeToolRestriction.nativeToolRefs must be unique and sorted.');
86
+ }
87
+ previous = ref;
88
+ refs.add(ref);
89
+ }
90
+ return refs;
91
+ }
92
+ function isRecord(value) {
93
+ return value !== null && typeof value === 'object' && !Array.isArray(value);
94
+ }
95
+ //# sourceMappingURL=runtime-profile-compiler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-profile-compiler.js","sourceRoot":"","sources":["../../src/lib/runtime-profile-compiler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { type RuntimeProfileSchema } from '@xemahq/kernel-contracts/worker-runtime';
2
+ export declare const OPENCODE_NATIVE_PERMISSION_REFS: readonly ["bash", "doom_loop", "edit", "glob", "grep", "lsp", "question", "read", "skill", "task", "todowrite", "webfetch", "websearch"];
3
+ export type OpencodeNativePermissionRef = (typeof OPENCODE_NATIVE_PERMISSION_REFS)[number];
4
+ export interface OpencodeRuntimeProfileSettings {
5
+ readonly snapshot: boolean;
6
+ readonly compaction: {
7
+ readonly auto: boolean;
8
+ readonly prune: boolean;
9
+ readonly reservedTokens: number;
10
+ };
11
+ }
12
+ export declare function isOpencodeNativePermissionRef(value: string): value is OpencodeNativePermissionRef;
13
+ export declare const OpencodeRuntimeProfileSchema: RuntimeProfileSchema;
14
+ //# sourceMappingURL=runtime-profile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-profile.d.ts","sourceRoot":"","sources":["../../src/lib/runtime-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,oBAAoB,EAC1B,MAAM,yCAAyC,CAAC;AAWjD,eAAO,MAAM,+BAA+B,0IAclC,CAAC;AAEX,MAAM,MAAM,2BAA2B,GACrC,CAAC,OAAO,+BAA+B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE;QACnB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;QACvB,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;QACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;KACjC,CAAC;CACH;AAUD,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE,MAAM,GACZ,KAAK,IAAI,2BAA2B,CAEtC;AAGD,eAAO,MAAM,4BAA4B,EAAE,oBAyBvC,CAAC"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OpencodeRuntimeProfileSchema = exports.OPENCODE_NATIVE_PERMISSION_REFS = void 0;
4
+ exports.isOpencodeNativePermissionRef = isOpencodeNativePermissionRef;
5
+ const worker_runtime_1 = require("@xemahq/kernel-contracts/worker-runtime");
6
+ exports.OPENCODE_NATIVE_PERMISSION_REFS = [
7
+ 'bash',
8
+ 'doom_loop',
9
+ 'edit',
10
+ 'glob',
11
+ 'grep',
12
+ 'lsp',
13
+ 'question',
14
+ 'read',
15
+ 'skill',
16
+ 'task',
17
+ 'todowrite',
18
+ 'webfetch',
19
+ 'websearch',
20
+ ];
21
+ const SETTINGS_KEYS = ['compaction', 'snapshot'];
22
+ const COMPACTION_KEYS = ['auto', 'prune', 'reservedTokens'];
23
+ const MIN_RESERVED_TOKENS = 1;
24
+ const MAX_RESERVED_TOKENS = 1_000_000;
25
+ const NATIVE_PERMISSION_REF_SET = new Set(exports.OPENCODE_NATIVE_PERMISSION_REFS);
26
+ function isOpencodeNativePermissionRef(value) {
27
+ return NATIVE_PERMISSION_REF_SET.has(value);
28
+ }
29
+ exports.OpencodeRuntimeProfileSchema = worker_runtime_1.RuntimeProfileContentSchema.superRefine((profile, context) => {
30
+ if (profile.runtimeKind !== worker_runtime_1.WorkerRuntimeKind.Opencode) {
31
+ addIssue(context, ['runtimeKind'], `OpenCode adapter requires runtimeKind "${worker_runtime_1.WorkerRuntimeKind.Opencode}".`);
32
+ }
33
+ addSettingsIssues(profile.settings, context);
34
+ for (let index = 0; index < profile.nativePermissionPolicy.entries.length; index += 1) {
35
+ const entry = profile.nativePermissionPolicy.entries[index];
36
+ if (entry !== undefined &&
37
+ !isOpencodeNativePermissionRef(entry.nativeToolRef)) {
38
+ addIssue(context, ['nativePermissionPolicy', 'entries', index, 'nativeToolRef'], `Unsupported OpenCode native permission ref "${entry.nativeToolRef}". ` +
39
+ 'Xema capabilities and MCP tools are not OpenCode native permissions.');
40
+ }
41
+ }
42
+ });
43
+ function addSettingsIssues(settings, context) {
44
+ addUnknownKeyIssues(settings, SETTINGS_KEYS, ['settings'], context);
45
+ if (!Object.hasOwn(settings, 'snapshot')) {
46
+ addIssue(context, ['settings', 'snapshot'], 'snapshot is required.');
47
+ }
48
+ else if (typeof settings.snapshot !== 'boolean') {
49
+ addIssue(context, ['settings', 'snapshot'], 'snapshot must be a boolean.');
50
+ }
51
+ if (!Object.hasOwn(settings, 'compaction')) {
52
+ addIssue(context, ['settings', 'compaction'], 'compaction is required.');
53
+ return;
54
+ }
55
+ if (!isRecord(settings.compaction)) {
56
+ addIssue(context, ['settings', 'compaction'], 'compaction must be an object.');
57
+ return;
58
+ }
59
+ const compaction = settings.compaction;
60
+ addUnknownKeyIssues(compaction, COMPACTION_KEYS, ['settings', 'compaction'], context);
61
+ for (const key of ['auto', 'prune']) {
62
+ if (!Object.hasOwn(compaction, key)) {
63
+ addIssue(context, ['settings', 'compaction', key], `${key} is required.`);
64
+ }
65
+ else if (typeof compaction[key] !== 'boolean') {
66
+ addIssue(context, ['settings', 'compaction', key], `${key} must be a boolean.`);
67
+ }
68
+ }
69
+ if (!Object.hasOwn(compaction, 'reservedTokens')) {
70
+ addIssue(context, ['settings', 'compaction', 'reservedTokens'], 'reservedTokens is required.');
71
+ }
72
+ else if (typeof compaction.reservedTokens !== 'number' ||
73
+ !Number.isSafeInteger(compaction.reservedTokens) ||
74
+ compaction.reservedTokens < MIN_RESERVED_TOKENS ||
75
+ compaction.reservedTokens > MAX_RESERVED_TOKENS) {
76
+ addIssue(context, ['settings', 'compaction', 'reservedTokens'], `reservedTokens must be a safe integer between ${MIN_RESERVED_TOKENS} and ${MAX_RESERVED_TOKENS}.`);
77
+ }
78
+ }
79
+ function addUnknownKeyIssues(value, expectedKeys, path, context) {
80
+ const expected = new Set(expectedKeys);
81
+ for (const key of Object.keys(value)) {
82
+ if (!expected.has(key)) {
83
+ addIssue(context, [...path, key], `Unknown OpenCode setting "${key}".`);
84
+ }
85
+ }
86
+ }
87
+ function addIssue(context, path, message) {
88
+ context.addIssue({ code: 'custom', path: [...path], message });
89
+ }
90
+ function isRecord(value) {
91
+ return value !== null && typeof value === 'object' && !Array.isArray(value);
92
+ }
93
+ //# sourceMappingURL=runtime-profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-profile.js","sourceRoot":"","sources":["../../src/lib/runtime-profile.ts"],"names":[],"mappings":"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"}
@@ -35,8 +35,8 @@ function buildOpencodeSessionBundle(input, allocationId, caller, bindingEpoch, w
35
35
  if (!Number.isSafeInteger(bindingEpoch) || bindingEpoch < 1) {
36
36
  throw new Error('bindingEpoch must be a positive safe integer.');
37
37
  }
38
- const runtimeConfigBase64 = input.runtimeConfigBase64 ?? '';
39
- if (!runtimeConfigBase64) {
38
+ const runtimeConfigBase64 = input.runtimeConfigBase64;
39
+ if (runtimeConfigBase64 === undefined || runtimeConfigBase64.length === 0) {
40
40
  throw new Error('BuildBundleInput.runtimeConfigBase64 is required by the opencode runtime — the workspace-proxy bundle handler treats an empty config as a 400.');
41
41
  }
42
42
  const staticFingerprint = computeStaticBundleFingerprint(input);
@@ -1 +1 @@
1
- {"version":3,"file":"session-bundle.js","sourceRoot":"","sources":["../../src/lib/session-bundle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-bundle.js","sourceRoot":"","sources":["../../src/lib/session-bundle.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xemahq/worker-runtime-opencode",
3
- "version": "0.5.4",
3
+ "version": "0.6.0",
4
4
  "description": "Opencode WorkerRuntime driver — wraps the workspace-proxy control-session handshake and the opencode SSE event stream behind the kernel WorkerRuntime contract.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Neuralchowder Inc. <developer@xema.dev> (https://xema.dev)",
@@ -27,7 +27,7 @@
27
27
  "prettier": "3.6.2",
28
28
  "ts-jest": "^29.4.9",
29
29
  "typescript": "5.9.3",
30
- "@xemahq/kernel-contracts": "^13.0.0"
30
+ "@xemahq/kernel-contracts": "^26.0.0"
31
31
  },
32
32
  "exports": {
33
33
  ".": {