@dsh-enhanced/plugin-control-plane 0.1.48 → 0.1.53

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 (185) hide show
  1. package/README.md +187 -15
  2. package/bin/dsh-live-qualification-authority.js +15 -0
  3. package/bin/dsh-local-release-adapter.js +331 -9
  4. package/bin/dsh-systemd-host-attestor.js +359 -9
  5. package/bin/dsh-systemd-host-authority.js +12 -0
  6. package/lib/adoption-coordinator.d.ts +3 -1
  7. package/lib/adoption-coordinator.d.ts.map +1 -1
  8. package/lib/adoption-coordinator.js +24 -9
  9. package/lib/adoption-coordinator.js.map +1 -1
  10. package/lib/cli.d.ts.map +1 -1
  11. package/lib/cli.js +33 -14
  12. package/lib/cli.js.map +1 -1
  13. package/lib/creation-capability-feedback.d.ts +23 -0
  14. package/lib/creation-capability-feedback.d.ts.map +1 -0
  15. package/lib/creation-capability-feedback.js +132 -0
  16. package/lib/creation-capability-feedback.js.map +1 -0
  17. package/lib/creation-capability-journal.d.ts +66 -0
  18. package/lib/creation-capability-journal.d.ts.map +1 -0
  19. package/lib/creation-capability-journal.js +775 -0
  20. package/lib/creation-capability-journal.js.map +1 -0
  21. package/lib/creation-capability-runtime.d.ts +63 -0
  22. package/lib/creation-capability-runtime.d.ts.map +1 -0
  23. package/lib/creation-capability-runtime.js +578 -0
  24. package/lib/creation-capability-runtime.js.map +1 -0
  25. package/lib/creation-capability-source.d.ts +37 -0
  26. package/lib/creation-capability-source.d.ts.map +1 -0
  27. package/lib/creation-capability-source.js +328 -0
  28. package/lib/creation-capability-source.js.map +1 -0
  29. package/lib/creation-capability-types.d.ts +265 -0
  30. package/lib/creation-capability-types.d.ts.map +1 -0
  31. package/lib/creation-capability-types.js +2 -0
  32. package/lib/creation-capability-types.js.map +1 -0
  33. package/lib/deployment-readiness.d.ts +16 -0
  34. package/lib/deployment-readiness.d.ts.map +1 -1
  35. package/lib/deployment-readiness.js +48 -1
  36. package/lib/deployment-readiness.js.map +1 -1
  37. package/lib/effect-blocked-replay.js +2 -2
  38. package/lib/effect-blocked-replay.js.map +1 -1
  39. package/lib/foreground-deployment-runtime.d.ts +3 -0
  40. package/lib/foreground-deployment-runtime.d.ts.map +1 -1
  41. package/lib/foreground-deployment-runtime.js +55 -13
  42. package/lib/foreground-deployment-runtime.js.map +1 -1
  43. package/lib/foreground-deployment.d.ts.map +1 -1
  44. package/lib/foreground-deployment.js +5 -0
  45. package/lib/foreground-deployment.js.map +1 -1
  46. package/lib/host-attestor.d.ts +2 -0
  47. package/lib/host-attestor.d.ts.map +1 -1
  48. package/lib/host-attestor.js +8 -1
  49. package/lib/host-attestor.js.map +1 -1
  50. package/lib/host-inputs.d.ts +13 -0
  51. package/lib/host-inputs.d.ts.map +1 -0
  52. package/lib/host-inputs.js +162 -0
  53. package/lib/host-inputs.js.map +1 -0
  54. package/lib/host-maintenance.d.ts +61 -0
  55. package/lib/host-maintenance.d.ts.map +1 -0
  56. package/lib/host-maintenance.js +158 -0
  57. package/lib/host-maintenance.js.map +1 -0
  58. package/lib/host-readiness.d.ts +5 -0
  59. package/lib/host-readiness.d.ts.map +1 -0
  60. package/lib/host-readiness.js +22 -0
  61. package/lib/host-readiness.js.map +1 -0
  62. package/lib/index.d.ts +16 -0
  63. package/lib/index.d.ts.map +1 -1
  64. package/lib/index.js +7 -0
  65. package/lib/index.js.map +1 -1
  66. package/lib/live-qualification-authority.d.ts +32 -0
  67. package/lib/live-qualification-authority.d.ts.map +1 -0
  68. package/lib/live-qualification-authority.js +280 -0
  69. package/lib/live-qualification-authority.js.map +1 -0
  70. package/lib/live-qualification-client.d.ts +4 -0
  71. package/lib/live-qualification-client.d.ts.map +1 -0
  72. package/lib/live-qualification-client.js +22 -0
  73. package/lib/live-qualification-client.js.map +1 -0
  74. package/lib/live-qualification-runtime.d.ts +78 -0
  75. package/lib/live-qualification-runtime.d.ts.map +1 -0
  76. package/lib/live-qualification-runtime.js +367 -0
  77. package/lib/live-qualification-runtime.js.map +1 -0
  78. package/lib/live-qualification.d.ts +73 -0
  79. package/lib/live-qualification.d.ts.map +1 -0
  80. package/lib/live-qualification.js +164 -0
  81. package/lib/live-qualification.js.map +1 -0
  82. package/lib/native-source-build-worker.d.ts +4 -0
  83. package/lib/native-source-build-worker.d.ts.map +1 -0
  84. package/lib/native-source-build-worker.js +87 -0
  85. package/lib/native-source-build-worker.js.map +1 -0
  86. package/lib/native-source-build.d.ts +36 -0
  87. package/lib/native-source-build.d.ts.map +1 -0
  88. package/lib/native-source-build.js +143 -0
  89. package/lib/native-source-build.js.map +1 -0
  90. package/lib/native-source-pack.d.ts +11 -0
  91. package/lib/native-source-pack.d.ts.map +1 -0
  92. package/lib/native-source-pack.js +83 -0
  93. package/lib/native-source-pack.js.map +1 -0
  94. package/lib/owner-task-gaps.d.ts +2 -0
  95. package/lib/owner-task-gaps.d.ts.map +1 -1
  96. package/lib/owner-task-gaps.js +9 -1
  97. package/lib/owner-task-gaps.js.map +1 -1
  98. package/lib/runtime-epoch.d.ts +69 -0
  99. package/lib/runtime-epoch.d.ts.map +1 -0
  100. package/lib/runtime-epoch.js +139 -0
  101. package/lib/runtime-epoch.js.map +1 -0
  102. package/lib/runtime-observer-protocol.d.ts +3 -3
  103. package/lib/runtime-observer-protocol.js +5 -5
  104. package/lib/runtime-observer-protocol.js.map +1 -1
  105. package/lib/runtime-observer.d.ts.map +1 -1
  106. package/lib/runtime-observer.js +42 -6
  107. package/lib/runtime-observer.js.map +1 -1
  108. package/lib/service.d.ts +248 -4
  109. package/lib/service.d.ts.map +1 -1
  110. package/lib/service.js +1431 -64
  111. package/lib/service.js.map +1 -1
  112. package/lib/source-adoption-authority.d.ts +3 -0
  113. package/lib/source-adoption-authority.d.ts.map +1 -1
  114. package/lib/source-adoption-authority.js +13 -3
  115. package/lib/source-adoption-authority.js.map +1 -1
  116. package/lib/source-adoption-runner.d.ts +3 -0
  117. package/lib/source-adoption-runner.d.ts.map +1 -1
  118. package/lib/source-adoption-runner.js +16 -4
  119. package/lib/source-adoption-runner.js.map +1 -1
  120. package/lib/source-approval-authority.d.ts.map +1 -1
  121. package/lib/source-approval-authority.js +1 -0
  122. package/lib/source-approval-authority.js.map +1 -1
  123. package/lib/source-baseline.d.ts +37 -0
  124. package/lib/source-baseline.d.ts.map +1 -0
  125. package/lib/source-baseline.js +250 -0
  126. package/lib/source-baseline.js.map +1 -0
  127. package/lib/source-build.d.ts +43 -9
  128. package/lib/source-build.d.ts.map +1 -1
  129. package/lib/source-build.js +670 -57
  130. package/lib/source-build.js.map +1 -1
  131. package/lib/source-context.d.ts +18 -0
  132. package/lib/source-context.d.ts.map +1 -1
  133. package/lib/source-context.js +85 -11
  134. package/lib/source-context.js.map +1 -1
  135. package/lib/source-creation.d.ts +106 -0
  136. package/lib/source-creation.d.ts.map +1 -0
  137. package/lib/source-creation.js +664 -0
  138. package/lib/source-creation.js.map +1 -0
  139. package/lib/source-job-types.d.ts +28 -1
  140. package/lib/source-job-types.d.ts.map +1 -1
  141. package/lib/source-jobs.d.ts +33 -3
  142. package/lib/source-jobs.d.ts.map +1 -1
  143. package/lib/source-jobs.js +420 -43
  144. package/lib/source-jobs.js.map +1 -1
  145. package/lib/source-maintenance.d.ts +66 -0
  146. package/lib/source-maintenance.d.ts.map +1 -0
  147. package/lib/source-maintenance.js +177 -0
  148. package/lib/source-maintenance.js.map +1 -0
  149. package/lib/source-revision.d.ts +57 -0
  150. package/lib/source-revision.d.ts.map +1 -0
  151. package/lib/source-revision.js +175 -0
  152. package/lib/source-revision.js.map +1 -0
  153. package/lib/source-workspace.d.ts +19 -14
  154. package/lib/source-workspace.d.ts.map +1 -1
  155. package/lib/source-workspace.js +90 -17
  156. package/lib/source-workspace.js.map +1 -1
  157. package/lib/sqlite.d.ts +13 -3
  158. package/lib/sqlite.d.ts.map +1 -1
  159. package/lib/sqlite.js +362 -1
  160. package/lib/sqlite.js.map +1 -1
  161. package/lib/store.d.ts +258 -3
  162. package/lib/store.d.ts.map +1 -1
  163. package/lib/store.js +2257 -96
  164. package/lib/store.js.map +1 -1
  165. package/lib/systemd-host-authority.d.ts +68 -0
  166. package/lib/systemd-host-authority.d.ts.map +1 -0
  167. package/lib/systemd-host-authority.js +424 -0
  168. package/lib/systemd-host-authority.js.map +1 -0
  169. package/lib/task-observation-evidence.d.ts +32 -0
  170. package/lib/task-observation-evidence.d.ts.map +1 -0
  171. package/lib/task-observation-evidence.js +62 -0
  172. package/lib/task-observation-evidence.js.map +1 -0
  173. package/lib/task-observation-runtime.d.ts +2 -3
  174. package/lib/task-observation-runtime.d.ts.map +1 -1
  175. package/lib/task-observation-runtime.js +7 -39
  176. package/lib/task-observation-runtime.js.map +1 -1
  177. package/lib/task-observation-store.js +1 -1
  178. package/lib/trust.d.ts.map +1 -1
  179. package/lib/trust.js +0 -0
  180. package/lib/trust.js.map +1 -1
  181. package/lib/types.d.ts +57 -7
  182. package/lib/types.d.ts.map +1 -1
  183. package/lib/version.d.ts +1 -1
  184. package/lib/version.js +1 -1
  185. package/package.json +22 -14
@@ -0,0 +1,83 @@
1
+ import { createHash } from 'node:crypto';
2
+ import { gzipSync, gunzipSync } from 'node:zlib';
3
+ import { ControlPlaneCliError } from './errors.js';
4
+ const MAX_PACK = 512 * 1024;
5
+ const MAX_UNPACKED = 16 * 1024 * 1024;
6
+ const PATH = /^package\/[A-Za-z0-9._-]+(?:\/[A-Za-z0-9._-]+)*$/u;
7
+ function fail(message) { throw new ControlPlaneCliError('SOURCE_BOUNDARY', `native source pack ${message}`); }
8
+ function octal(header, offset, width, value) {
9
+ const text = value.toString(8);
10
+ if (text.length > width - 1)
11
+ fail('number exceeds tar header');
12
+ header.write(text.padStart(width - 1, '0') + '\0', offset, width, 'ascii');
13
+ }
14
+ function member(path, bytes) {
15
+ if (!PATH.test(path) || Buffer.byteLength(path) > 100 || bytes.length > 131_072)
16
+ fail('member path or bytes are unsafe');
17
+ const header = Buffer.alloc(512);
18
+ header.write(path, 0, 100, 'utf8');
19
+ octal(header, 100, 8, 0o644);
20
+ octal(header, 108, 8, 0);
21
+ octal(header, 116, 8, 0);
22
+ octal(header, 124, 12, bytes.length);
23
+ octal(header, 136, 12, 0);
24
+ header.fill(32, 148, 156);
25
+ header.write('0', 156, 1, 'ascii');
26
+ header.write('ustar\0', 257, 6, 'ascii');
27
+ header.write('00', 263, 2, 'ascii');
28
+ const checksum = header.reduce((sum, byte) => sum + byte, 0);
29
+ octal(header, 148, 8, checksum);
30
+ return Buffer.concat([header, bytes, Buffer.alloc((512 - bytes.length % 512) % 512)]);
31
+ }
32
+ /** Host-built deterministic npm-compatible ustar. The caller provides exact
33
+ * Host-verified fixed files and bounded compiler output, never a filesystem
34
+ * path, symlink or candidate-controlled archive. */
35
+ export function packNativeCreatedPlugin(name, fixed, emitted) {
36
+ if (!/^[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/u.test(name) || name.length > 64)
37
+ fail('plugin name is invalid');
38
+ for (const key of ['package.json', 'README.md', 'LICENSE', 'cordis.patch.yml']) {
39
+ if (!fixed.has(key))
40
+ fail(`fixed file is missing: ${key}`);
41
+ }
42
+ if (!emitted.has('lib/index.js') || !emitted.has('lib/index.d.ts'))
43
+ fail('compiled entry is missing');
44
+ let manifest;
45
+ try {
46
+ manifest = JSON.parse(fixed.get('package.json'));
47
+ }
48
+ catch {
49
+ fail('package manifest is invalid');
50
+ }
51
+ const version = manifest.version;
52
+ if (manifest.name !== `@dsh-enhanced/${name}` || typeof version !== 'string'
53
+ || !/^[0-9]+\.[0-9]+\.[0-9]+(?:-[0-9A-Za-z.-]+)?$/u.test(version)
54
+ || manifest.main !== './lib/index.js' || manifest.types !== './lib/index.d.ts'
55
+ || JSON.stringify(manifest.files) !== JSON.stringify(['lib', 'cordis.patch.yml', 'README.md', 'LICENSE'])
56
+ || manifest.dsh?.bundle?.patch !== './cordis.patch.yml') {
57
+ fail('package identity or published boundary differs');
58
+ }
59
+ const entries = new Map();
60
+ for (const key of ['package.json', 'README.md', 'LICENSE', 'cordis.patch.yml']) {
61
+ entries.set(`package/${key}`, Buffer.from(fixed.get(key)));
62
+ }
63
+ for (const [path, content] of emitted) {
64
+ if (!/^lib\/[A-Za-z0-9._-]+(?:\/[A-Za-z0-9._-]+)*\.(?:js|d\.ts)$/u.test(path)
65
+ || path.split('/').includes('..') || typeof content !== 'string' || entries.has(`package/${path}`))
66
+ fail('compiler output is unsafe');
67
+ entries.set(`package/${path}`, Buffer.from(content));
68
+ }
69
+ if (entries.size > 128)
70
+ fail('too many members');
71
+ const archive = Buffer.concat([...entries].sort(([a], [b]) => a.localeCompare(b)).map(([path, bytes]) => member(path, bytes)).concat([Buffer.alloc(1024)]));
72
+ if (archive.length > MAX_UNPACKED)
73
+ fail('uncompressed archive exceeds limit');
74
+ const bytes = gzipSync(archive, { level: 9 });
75
+ if (bytes.length > MAX_PACK)
76
+ fail('archive exceeds limit');
77
+ // Read back the emitted bytes through an independent bounded gzip decoder.
78
+ if (!gunzipSync(bytes, { maxOutputLength: MAX_UNPACKED }).equals(archive))
79
+ fail('archive readback differs');
80
+ return { bytes, name: `${name}-${version}.tgz`, version,
81
+ sha256: createHash('sha256').update(bytes).digest('hex') };
82
+ }
83
+ //# sourceMappingURL=native-source-pack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-source-pack.js","sourceRoot":"","sources":["../src/native-source-pack.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,8 @@ export declare class OwnerTaskFailureGaps {
18
18
  record(source: OwnerForegroundLearningTask): import("./types.js").StoredCapabilityGap;
19
19
  /** Private Host snapshot; objective and actual model never enter the public gap. */
20
20
  snapshot(gapId: string, owner: SourceJobOwnerReceipt): OwnerForegroundLearningTask;
21
+ /** Read-only part of a combined Host acceptance fence; caller owns the Evaluation writer lock. */
22
+ inspectCurrent(gapId: string, owner: SourceJobOwnerReceipt): OwnerForegroundLearningTask;
21
23
  withCurrent<T>(gapId: string, owner: SourceJobCaller | SourceJobOwnerReceipt | undefined, callback: () => T): T;
22
24
  }
23
25
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"owner-task-gaps.d.ts","sourceRoot":"","sources":["../src/owner-task-gaps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAA;AAC7G,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AACpF,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAElE,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,IAAI,CAAC,wBAAwB,EAAE,oCAAoC,CAAC,CAAA;IAC9E,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,oBAAoB,GAAG,qCAAqC,CAAC,CAAA;CAC3G,CAAA;AAED,6EAA6E;AAC7E,qBAAa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAqB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAhD,KAAK,EAAE,iBAAiB,EAAmB,KAAK,EAAE,MAAM,KAAK;IAE1F,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,IAAI;IAUZ,OAAO,CAAC,KAAK;IAeb,MAAM,CAAC,MAAM,EAAE,2BAA2B;IAK1C,oFAAoF;IACpF,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,2BAA2B;IAMlF,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,qBAAqB,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;CAahH"}
1
+ {"version":3,"file":"owner-task-gaps.d.ts","sourceRoot":"","sources":["../src/owner-task-gaps.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAA;AAC7G,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAA;AAEpF,OAAO,EAAsB,KAAK,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAEvE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAA;AAElE,KAAK,KAAK,GAAG;IACX,QAAQ,EAAE,IAAI,CAAC,wBAAwB,EAAE,oCAAoC,CAAC,CAAA;IAC9E,UAAU,EAAE,IAAI,CAAC,0BAA0B,EAAE,oBAAoB,GAAG,qCAAqC,CAAC,CAAA;CAC3G,CAAA;AAED,6EAA6E;AAC7E,qBAAa,oBAAoB;IACnB,OAAO,CAAC,QAAQ,CAAC,KAAK;IAAqB,OAAO,CAAC,QAAQ,CAAC,KAAK;gBAAhD,KAAK,EAAE,iBAAiB,EAAmB,KAAK,EAAE,MAAM,KAAK;IAE1F,OAAO,CAAC,SAAS;IAcjB,OAAO,CAAC,IAAI;IAUZ,OAAO,CAAC,KAAK;IAeb,MAAM,CAAC,MAAM,EAAE,2BAA2B;IAK1C,oFAAoF;IACpF,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,2BAA2B;IAMlF,kGAAkG;IAClG,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,2BAA2B;IAMxF,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,GAAG,qBAAqB,GAAG,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC;CAahH"}
@@ -1,3 +1,4 @@
1
+ import { isSourceOwnerContinuation } from '@dsh-enhanced/assistant-growth-contract';
1
2
  import { controlPlaneDigest } from './store.js';
2
3
  /** Host-only bridge. A caller's source is an expectation, never evidence. */
3
4
  export class OwnerTaskFailureGaps {
@@ -56,13 +57,20 @@ export class OwnerTaskFailureGaps {
56
57
  throw new Error('task repair source unavailable');
57
58
  return this.withCurrent(gapId, owner, () => structuredClone(this.read(reference, this.ports())));
58
59
  }
60
+ /** Read-only part of a combined Host acceptance fence; caller owns the Evaluation writer lock. */
61
+ inspectCurrent(gapId, owner) {
62
+ const reference = this.store.getOwnerTaskFailureReference(gapId);
63
+ if (!reference || controlPlaneDigest(reference.owner) !== controlPlaneDigest(owner))
64
+ throw new Error('task repair source owner changed');
65
+ return this.read(reference, this.ports());
66
+ }
59
67
  withCurrent(gapId, owner, callback) {
60
68
  const reference = this.store.getOwnerTaskFailureReference(gapId);
61
69
  if (!reference)
62
70
  return callback();
63
71
  const expected = reference.owner;
64
72
  if (!owner || ('receiptVersion' in owner
65
- ? controlPlaneDigest(owner) !== controlPlaneDigest(expected)
73
+ ? !isSourceOwnerContinuation(owner, expected)
66
74
  : owner.ownerRouteId !== expected.authorityId || owner.principalId !== expected.principalId
67
75
  || owner.principalRecordId !== expected.principalRecordId || owner.principalVersion !== expected.principalVersion
68
76
  || owner.workspace !== expected.workspace || owner.preset !== expected.agentPreset)) {
@@ -1 +1 @@
1
- {"version":3,"file":"owner-task-gaps.js","sourceRoot":"","sources":["../src/owner-task-gaps.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"owner-task-gaps.js","sourceRoot":"","sources":["../src/owner-task-gaps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,69 @@
1
+ import type { PluginControlTrustConfig } from './trust.js';
2
+ import type { HostAttestationRequest } from './types.js';
3
+ export interface RuntimeEpochRequest {
4
+ schemaVersion: 1;
5
+ kind: 'dsh-runtime-epoch-request';
6
+ operationId: string;
7
+ requestedAt: number;
8
+ receiptTtlMs: number;
9
+ installationId: string;
10
+ ledger: {
11
+ id: string;
12
+ path: string;
13
+ };
14
+ plan: {
15
+ id: string;
16
+ digest: string;
17
+ };
18
+ activation: {
19
+ id: string;
20
+ fence: number;
21
+ };
22
+ profile: {
23
+ name: string;
24
+ path: string;
25
+ };
26
+ issuer: Extract<HostAttestationRequest['issuer'], {
27
+ mode: 'configured-executable';
28
+ }>;
29
+ predecessor: {
30
+ operationId: string;
31
+ receiptDigest: string;
32
+ hostGeneration: number;
33
+ };
34
+ sequence: number;
35
+ runtimeIdentityDigest: string;
36
+ }
37
+ export interface RuntimeEpochReceipt {
38
+ schemaVersion: 1;
39
+ kind: 'dsh-runtime-epoch-receipt';
40
+ receiptId: string;
41
+ operationId: string;
42
+ requestDigest: string;
43
+ installationId: string;
44
+ planId: string;
45
+ planDigest: string;
46
+ activationId: string;
47
+ fence: number;
48
+ hostGeneration: number;
49
+ sequence: number;
50
+ runtimeIdentityDigest: string;
51
+ authority: string;
52
+ keyId: string;
53
+ outcome: 'passed' | 'failed';
54
+ observedAt: number;
55
+ expiresAt: number;
56
+ evidence: {
57
+ checks: number;
58
+ failures: number;
59
+ probeDigest: string;
60
+ };
61
+ signature: string;
62
+ }
63
+ export declare function parseRuntimeEpochRequest(value: unknown): RuntimeEpochRequest;
64
+ export declare function parseRuntimeEpochReceipt(value: unknown): RuntimeEpochReceipt;
65
+ export declare function runtimeEpochRequestDigest(request: RuntimeEpochRequest): string;
66
+ export declare function runtimeEpochIdentityDigest(observation: Record<string, unknown>): string;
67
+ export declare function runtimeEpochSigningPayload(receipt: Omit<RuntimeEpochReceipt, 'signature'>): string;
68
+ export declare function verifyRuntimeEpochReceipt(receiptInput: unknown, requestInput: unknown, trust: Pick<PluginControlTrustConfig, 'installationId' | 'hostAttestationKeys'>, now?: number): RuntimeEpochReceipt;
69
+ //# sourceMappingURL=runtime-epoch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-epoch.d.ts","sourceRoot":"","sources":["../src/runtime-epoch.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAA;AAC1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAA;AAMxD,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,CAAC,CAAA;IAChB,IAAI,EAAE,2BAA2B,CAAA;IACjC,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;IACpC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IACpC,UAAU,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IACzC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAA;IACvC,MAAM,EAAE,OAAO,CAAC,sBAAsB,CAAC,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,uBAAuB,CAAA;KAAE,CAAC,CAAA;IACpF,WAAW,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,aAAa,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAA;IACnF,QAAQ,EAAE,MAAM,CAAA;IAChB,qBAAqB,EAAE,MAAM,CAAA;CAC9B;AAED,MAAM,WAAW,mBAAmB;IAClC,aAAa,EAAE,CAAC,CAAA;IAChB,IAAI,EAAE,2BAA2B,CAAA;IACjC,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,MAAM,CAAA;IACb,cAAc,EAAE,MAAM,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,qBAAqB,EAAE,MAAM,CAAA;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,QAAQ,GAAG,QAAQ,CAAA;IAC5B,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAA;IACnE,SAAS,EAAE,MAAM,CAAA;CAClB;AAkCD,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,mBAAmB,CAkC5E;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,mBAAmB,CAyB5E;AAED,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,mBAAmB,GAAG,MAAM,CAAqD;AACpI,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAGvF;AACD,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,GAAG,MAAM,CAA8B;AAEjI,wBAAgB,yBAAyB,CAAC,YAAY,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EACpF,KAAK,EAAE,IAAI,CAAC,wBAAwB,EAAE,gBAAgB,GAAG,qBAAqB,CAAC,EAAE,GAAG,SAAa,GAAG,mBAAmB,CAmBxH"}
@@ -0,0 +1,139 @@
1
+ import { createHash, createPublicKey, verify } from 'node:crypto';
2
+ import { isAbsolute, resolve } from 'node:path';
3
+ import { ControlPlaneStoreError } from './store.js';
4
+ const ID = /^[A-Za-z0-9][A-Za-z0-9._:-]{0,159}$/u;
5
+ const DIGEST = /^[a-f0-9]{64}$/u;
6
+ const UUID = /^[a-f0-9]{8}-[a-f0-9]{4}-[1-8][a-f0-9]{3}-[89ab][a-f0-9]{3}-[a-f0-9]{12}$/u;
7
+ function invalid(message) { throw new ControlPlaneStoreError('invalid-input', `runtime epoch: ${message}`); }
8
+ function conflict(message) { throw new ControlPlaneStoreError('conflict', `runtime epoch: ${message}`); }
9
+ function canonical(value) {
10
+ if (Array.isArray(value))
11
+ return `[${value.map(canonical).join(',')}]`;
12
+ if (value !== null && typeof value === 'object')
13
+ return `{${Object.entries(value)
14
+ .filter(([, item]) => item !== undefined).sort(([a], [b]) => a.localeCompare(b))
15
+ .map(([key, item]) => `${JSON.stringify(key)}:${canonical(item)}`).join(',')}}`;
16
+ return JSON.stringify(value);
17
+ }
18
+ function digest(value) { return createHash('sha256').update(canonical(value)).digest('hex'); }
19
+ function record(value, fields, label) {
20
+ if (value === null || typeof value !== 'object' || Array.isArray(value)
21
+ || Object.keys(value).sort().join('\0') !== [...fields].sort().join('\0'))
22
+ invalid(`${label} fields are invalid`);
23
+ return value;
24
+ }
25
+ function text(value, label, pattern = ID) {
26
+ if (typeof value !== 'string' || !pattern.test(value))
27
+ invalid(`${label} is invalid`);
28
+ return value;
29
+ }
30
+ function integer(value, label, min = 0, max = Number.MAX_SAFE_INTEGER) {
31
+ if (!Number.isSafeInteger(value) || Number(value) < min || Number(value) > max)
32
+ invalid(`${label} is invalid`);
33
+ return Number(value);
34
+ }
35
+ function path(value, label) {
36
+ if (typeof value !== 'string' || !isAbsolute(value) || resolve(value) !== value || value === '/')
37
+ invalid(`${label} is invalid`);
38
+ return value;
39
+ }
40
+ function pin(value, label) {
41
+ const item = record(value, ['path', 'sha256'], label);
42
+ return { path: path(item.path, `${label} path`), sha256: text(item.sha256, `${label} digest`, DIGEST) };
43
+ }
44
+ export function parseRuntimeEpochRequest(value) {
45
+ const item = record(value, ['schemaVersion', 'kind', 'operationId', 'requestedAt', 'receiptTtlMs', 'installationId',
46
+ 'ledger', 'plan', 'activation', 'profile', 'issuer', 'predecessor', 'sequence', 'runtimeIdentityDigest'], 'request');
47
+ if (item.schemaVersion !== 1 || item.kind !== 'dsh-runtime-epoch-request')
48
+ invalid('request version or kind is invalid');
49
+ const ledger = record(item.ledger, ['id', 'path'], 'ledger');
50
+ const plan = record(item.plan, ['id', 'digest'], 'plan');
51
+ const activation = record(item.activation, ['id', 'fence'], 'activation');
52
+ const profile = record(item.profile, ['name', 'path'], 'profile');
53
+ const issuer = record(item.issuer, ['mode', 'id', 'version', 'path', 'sha256', 'interpreter', 'authority', 'keyId'], 'issuer');
54
+ if (issuer.mode !== 'configured-executable')
55
+ invalid('configured issuer is required');
56
+ const predecessor = record(item.predecessor, ['operationId', 'receiptDigest', 'hostGeneration'], 'predecessor');
57
+ const operationId = text(item.operationId, 'operationId');
58
+ if (operationId.length > 152 || predecessor.operationId === operationId)
59
+ invalid('operation lineage is invalid');
60
+ const profileName = text(profile.name, 'profile name', /^[a-z0-9][a-z0-9-]{0,63}$/u);
61
+ const profilePath = path(profile.path, 'profile path');
62
+ if (profilePath.split('/').at(-1) !== profileName || profilePath.split('/').at(-2) !== 'profiles')
63
+ invalid('profile path differs from name');
64
+ return {
65
+ schemaVersion: 1, kind: 'dsh-runtime-epoch-request', operationId,
66
+ requestedAt: integer(item.requestedAt, 'requestedAt'), receiptTtlMs: integer(item.receiptTtlMs, 'receiptTtlMs', 1, 3_600_000),
67
+ installationId: text(item.installationId, 'installationId', UUID),
68
+ ledger: { id: text(ledger.id, 'ledger id'), path: path(ledger.path, 'ledger path') },
69
+ plan: { id: text(plan.id, 'plan id'), digest: text(plan.digest, 'plan digest', DIGEST) },
70
+ activation: { id: text(activation.id, 'activation id'), fence: integer(activation.fence, 'activation fence', 1) },
71
+ profile: { name: profileName, path: profilePath },
72
+ issuer: { mode: 'configured-executable', id: text(issuer.id, 'issuer id'), version: text(issuer.version, 'issuer version', /^[A-Za-z0-9][A-Za-z0-9._+-]{0,63}$/u),
73
+ ...pin({ path: issuer.path, sha256: issuer.sha256 }, 'issuer'),
74
+ interpreter: issuer.interpreter === null ? null : pin(issuer.interpreter, 'issuer interpreter'),
75
+ authority: text(issuer.authority, 'issuer authority'), keyId: text(issuer.keyId, 'issuer keyId') },
76
+ predecessor: { operationId: text(predecessor.operationId, 'predecessor operation'),
77
+ receiptDigest: text(predecessor.receiptDigest, 'predecessor digest', DIGEST),
78
+ hostGeneration: integer(predecessor.hostGeneration, 'predecessor generation', 1) },
79
+ sequence: integer(item.sequence, 'sequence', 1),
80
+ runtimeIdentityDigest: text(item.runtimeIdentityDigest, 'runtime identity digest', DIGEST),
81
+ };
82
+ }
83
+ export function parseRuntimeEpochReceipt(value) {
84
+ const item = record(value, ['schemaVersion', 'kind', 'receiptId', 'operationId', 'requestDigest', 'installationId',
85
+ 'planId', 'planDigest', 'activationId', 'fence', 'hostGeneration', 'sequence', 'runtimeIdentityDigest',
86
+ 'authority', 'keyId', 'outcome', 'observedAt', 'expiresAt', 'evidence', 'signature'], 'receipt');
87
+ if (item.schemaVersion !== 1 || item.kind !== 'dsh-runtime-epoch-receipt'
88
+ || (item.outcome !== 'passed' && item.outcome !== 'failed'))
89
+ invalid('receipt version, kind or outcome is invalid');
90
+ const evidence = record(item.evidence, ['checks', 'failures', 'probeDigest'], 'evidence');
91
+ const checks = integer(evidence.checks, 'checks', 2, 256);
92
+ const failures = integer(evidence.failures, 'failures', 0, checks);
93
+ const signature = text(item.signature, 'signature', /^[A-Za-z0-9+/]+={0,2}$/u);
94
+ if (Buffer.from(signature, 'base64').length !== 64 || Buffer.from(signature, 'base64').toString('base64') !== signature)
95
+ invalid('signature encoding is invalid');
96
+ const receipt = {
97
+ schemaVersion: 1, kind: 'dsh-runtime-epoch-receipt', receiptId: text(item.receiptId, 'receiptId'),
98
+ operationId: text(item.operationId, 'operationId'), requestDigest: text(item.requestDigest, 'requestDigest', DIGEST),
99
+ installationId: text(item.installationId, 'installationId', UUID), planId: text(item.planId, 'planId'),
100
+ planDigest: text(item.planDigest, 'planDigest', DIGEST), activationId: text(item.activationId, 'activationId'),
101
+ fence: integer(item.fence, 'fence', 1), hostGeneration: integer(item.hostGeneration, 'hostGeneration', 1),
102
+ sequence: integer(item.sequence, 'sequence', 1), runtimeIdentityDigest: text(item.runtimeIdentityDigest, 'runtime identity digest', DIGEST),
103
+ authority: text(item.authority, 'authority'), keyId: text(item.keyId, 'keyId'), outcome: item.outcome,
104
+ observedAt: integer(item.observedAt, 'observedAt'), expiresAt: integer(item.expiresAt, 'expiresAt'),
105
+ evidence: { checks, failures, probeDigest: text(evidence.probeDigest, 'probe digest', DIGEST) }, signature,
106
+ };
107
+ if (receipt.expiresAt <= receipt.observedAt || (receipt.outcome === 'passed' && failures !== 0)
108
+ || (receipt.outcome === 'failed' && failures === 0))
109
+ invalid('receipt interval or evidence is invalid');
110
+ return receipt;
111
+ }
112
+ export function runtimeEpochRequestDigest(request) { return digest(parseRuntimeEpochRequest(request)); }
113
+ export function runtimeEpochIdentityDigest(observation) {
114
+ const { challenge: _challenge, observedAt: _observedAt, ...identity } = observation;
115
+ return digest(identity);
116
+ }
117
+ export function runtimeEpochSigningPayload(receipt) { return canonical(receipt); }
118
+ export function verifyRuntimeEpochReceipt(receiptInput, requestInput, trust, now = Date.now()) {
119
+ const request = parseRuntimeEpochRequest(requestInput);
120
+ const receipt = parseRuntimeEpochReceipt(receiptInput);
121
+ if (receipt.receiptId !== `receipt:${request.operationId}` || receipt.operationId !== request.operationId
122
+ || receipt.requestDigest !== runtimeEpochRequestDigest(request) || receipt.installationId !== request.installationId
123
+ || receipt.installationId !== trust.installationId || receipt.planId !== request.plan.id || receipt.planDigest !== request.plan.digest
124
+ || receipt.activationId !== request.activation.id || receipt.fence !== request.activation.fence
125
+ || receipt.hostGeneration !== request.predecessor.hostGeneration || receipt.sequence !== request.sequence
126
+ || receipt.runtimeIdentityDigest !== request.runtimeIdentityDigest
127
+ || receipt.authority !== request.issuer.authority || receipt.keyId !== request.issuer.keyId)
128
+ conflict('receipt differs from the exact request');
129
+ if (receipt.observedAt < request.requestedAt || receipt.observedAt > now || now > receipt.expiresAt
130
+ || receipt.expiresAt - receipt.observedAt > request.receiptTtlMs) {
131
+ throw new ControlPlaneStoreError('expired', 'runtime epoch receipt is outside its validity interval');
132
+ }
133
+ const key = trust.hostAttestationKeys.find(candidate => candidate.authority === receipt.authority && candidate.keyId === receipt.keyId);
134
+ const { signature: _signature, ...unsigned } = receipt;
135
+ if (!key || !verify(null, Buffer.from(runtimeEpochSigningPayload(unsigned)), createPublicKey(key.publicKeyPem), Buffer.from(receipt.signature, 'base64')))
136
+ invalid('receipt signature or authority is invalid');
137
+ return Object.freeze(receipt);
138
+ }
139
+ //# sourceMappingURL=runtime-epoch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-epoch.js","sourceRoot":"","sources":["../src/runtime-epoch.ts"],"names":[],"mappings":"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"}
@@ -15,9 +15,9 @@ export declare const RUNTIME_OBSERVER_TIMEOUT = 2000;
15
15
  export declare function runtimeObserverFail(): never;
16
16
  /**
17
17
  * Runtime-only platform gate. The observer binds an owner-private AF_UNIX socket
18
- * and reads Loader/Fiber state through /proc-backed ownership checks, which are
19
- * only available on Linux. Callers that merely validate or clone configuration
20
- * must not use this.
18
+ * and reads Loader/Fiber state in-process. Linux and macOS both provide the
19
+ * private socket, inode and HMAC primitives used here. Service identity is
20
+ * checked separately by the platform installer. Pure validators do not use this.
21
21
  */
22
22
  export declare function assertRuntimeObserverPlatform(): void;
23
23
  export declare function assertRuntimeObserverExact(value: unknown, fields: string[]): asserts value is Record<string, unknown>;
@@ -9,12 +9,12 @@ export const RUNTIME_OBSERVER_TIMEOUT = 2_000;
9
9
  export function runtimeObserverFail() { throw new Error('runtime observer: invalid configuration, authentication or runtime observation'); }
10
10
  /**
11
11
  * Runtime-only platform gate. The observer binds an owner-private AF_UNIX socket
12
- * and reads Loader/Fiber state through /proc-backed ownership checks, which are
13
- * only available on Linux. Callers that merely validate or clone configuration
14
- * must not use this.
12
+ * and reads Loader/Fiber state in-process. Linux and macOS both provide the
13
+ * private socket, inode and HMAC primitives used here. Service identity is
14
+ * checked separately by the platform installer. Pure validators do not use this.
15
15
  */
16
16
  export function assertRuntimeObserverPlatform() {
17
- if (process.platform !== 'linux')
17
+ if (process.platform !== 'linux' && process.platform !== 'darwin')
18
18
  runtimeObserverFail();
19
19
  }
20
20
  export function assertRuntimeObserverExact(value, fields) {
@@ -217,7 +217,7 @@ export function assertRuntimeObservation(value) {
217
217
  }
218
218
  /** Owner caller supplies no claimed state; fresh challenge authenticates the observed response. */
219
219
  export async function queryRuntimeObserver(input) {
220
- if (process.platform !== 'linux')
220
+ if (process.platform !== 'linux' && process.platform !== 'darwin')
221
221
  runtimeObserverFail();
222
222
  privateRuntimeObserverDirectory(dirname(input.socketPath));
223
223
  const before = lstatSync(input.socketPath);
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-observer-protocol.js","sourceRoot":"","sources":["../src/runtime-observer-protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-observer-protocol.js","sourceRoot":"","sources":["../src/runtime-observer-protocol.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-observer.d.ts","sourceRoot":"","sources":["../src/runtime-observer.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAc,MAAM,qBAAqB,CAAA;AAEzD,OAAO,EAaL,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAE3B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,6BAA6B,EAC7B,oBAAoB,EACpB,mBAAmB,EACnB,6BAA6B,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,gCAAgC,CAAA;AAKvC,yFAAyF;AACzF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,qBAAqB,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,kBAAkB,CAoD3H;AAED,mFAAmF;AACnF,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,qBAAqB,EAC/E,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,kBAAkB,KAAK,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CA6ElH"}
1
+ {"version":3,"file":"runtime-observer.d.ts","sourceRoot":"","sources":["../src/runtime-observer.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,OAAO,EAAc,MAAM,qBAAqB,CAAA;AAEzD,OAAO,EAaL,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAE3B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EACL,6BAA6B,EAC7B,oBAAoB,EACpB,mBAAmB,EACnB,6BAA6B,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,GAC3B,MAAM,gCAAgC,CAAA;AAKvC,yFAAyF;AACzF,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,qBAAqB,GAAG,CAAC,SAAS,EAAE,MAAM,KAAK,kBAAkB,CA2E3H;AAED,mFAAmF;AACnF,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,qBAAqB,EAC/E,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,kBAAkB,KAAK,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,IAAI,CA6ElH"}
@@ -1,6 +1,8 @@
1
1
  import { randomUUID } from 'node:crypto';
2
2
  import { chmod, lstat, unlink } from 'node:fs/promises';
3
3
  import { createServer } from 'node:net';
4
+ import { join } from 'node:path';
5
+ import { pathToFileURL } from 'node:url';
4
6
  import { Context } from '@deepseek-ai/cordis';
5
7
  import { RUNTIME_OBSERVER_MAX_BYTES, RUNTIME_OBSERVER_TIMEOUT, assertRuntimeObservation, assertRuntimeObserverPlatform, assertRuntimeObserverExact, assertRuntimeObserverText, equalRuntimeObserverMac, readPrivateRuntimeObserverKey, runtimeConfigDigest, runtimeObserverFail, runtimeObserverMac, validateRuntimeObserverConfig, } from './runtime-observer-protocol.js';
6
8
  export { assertRuntimeObserverPlatform, queryRuntimeObserver, runtimeConfigDigest, validateRuntimeObserverConfig, } from './runtime-observer-protocol.js';
@@ -32,6 +34,43 @@ export function createRuntimeSampler(ctx, config) {
32
34
  }
33
35
  return false;
34
36
  };
37
+ const resolveTarget = (loader, entryId) => {
38
+ let root;
39
+ try {
40
+ root = loader.resolve('include');
41
+ }
42
+ catch {
43
+ root = undefined;
44
+ }
45
+ if (root || loader.builtins.include !== undefined) {
46
+ const rootOptions = root && Object.getOwnPropertyDescriptors(root.options);
47
+ const includeConfig = rootOptions?.config && 'value' in rootOptions.config ? rootOptions.config.value : undefined;
48
+ const path = includeConfig && typeof includeConfig === 'object' && !Array.isArray(includeConfig)
49
+ ? Object.getOwnPropertyDescriptors(includeConfig).path : undefined;
50
+ const localId = entryId.startsWith('include:') ? entryId.slice('include:'.length) : entryId;
51
+ if (!root || !rootOptions?.id || !('value' in rootOptions.id) || rootOptions.id.value !== 'include'
52
+ || root.parent !== loader.root || rootOptions.name?.value !== 'cordis:include'
53
+ || !path || !('value' in path) || path.value !== pathToFileURL(join(config.profilePath, 'cordis.yml')).href
54
+ || !root.subtree || root.subtree.ctx.fiber.entry !== root || !instance(root.fiber)
55
+ || !localId || localId.includes(':'))
56
+ return undefined;
57
+ try {
58
+ const entry = loader.resolve(`include:${localId}`);
59
+ const childId = Object.getOwnPropertyDescriptor(entry.options, 'id');
60
+ return childId && 'value' in childId && childId.value === localId
61
+ && entry.parent === root.subtree.root ? entry : undefined;
62
+ }
63
+ catch {
64
+ return undefined;
65
+ }
66
+ }
67
+ try {
68
+ return loader.resolve(entryId);
69
+ }
70
+ catch {
71
+ return undefined;
72
+ }
73
+ };
35
74
  return challenge => {
36
75
  assertRuntimeObserverText(challenge, /^[a-f0-9]{64}$/u);
37
76
  if (ctx.fiber.uid === null || ctx.fiber.state !== ACTIVE)
@@ -39,11 +78,8 @@ export function createRuntimeSampler(ctx, config) {
39
78
  // Resolve the current injected provider on every sample, never cache a proxy.
40
79
  const loader = ctx.loader;
41
80
  const entries = config.targets.map(target => {
42
- let entry;
43
- try {
44
- entry = loader.resolve(target.entryId);
45
- }
46
- catch {
81
+ const entry = resolveTarget(loader, target.entryId);
82
+ if (!entry) {
47
83
  return { entryId: target.entryId, module: null, configDigest: null, active: false, instance: null, dependencies: [], services: [] };
48
84
  }
49
85
  const fiber = entry.fiber;
@@ -60,7 +96,7 @@ export function createRuntimeSampler(ctx, config) {
60
96
  const impl = realm ? fiber?.ctx.reflect.store[realm] : undefined;
61
97
  return { name, instance: impl && fiber && ownedBy(impl.fiber, fiber) && fiber.ctx.get(name) !== undefined ? instance(impl.fiber) : null };
62
98
  });
63
- return { entryId: entry.id, module, configDigest,
99
+ return { entryId: target.entryId, module, configDigest,
64
100
  active: !entry.disabled && module === target.module && configDigest === target.configDigest
65
101
  && current !== null && current.uid > 0 && dependencies.every(item => item.instance !== null) && services.every(item => item.instance !== null),
66
102
  instance: current, dependencies, services };