@dsh-enhanced/assistant-isolation 0.1.65 → 0.1.67

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 (116) hide show
  1. package/README.md +287 -9
  2. package/lib/audit-archive.d.ts +1 -1
  3. package/lib/audit-archive.d.ts.map +1 -1
  4. package/lib/audit-archive.js +31 -13
  5. package/lib/audit-archive.js.map +1 -1
  6. package/lib/cli.d.ts +7 -3
  7. package/lib/cli.d.ts.map +1 -1
  8. package/lib/cli.js +104 -23
  9. package/lib/cli.js.map +1 -1
  10. package/lib/config.d.ts +15 -2
  11. package/lib/config.d.ts.map +1 -1
  12. package/lib/config.js +49 -9
  13. package/lib/config.js.map +1 -1
  14. package/lib/diagnostics.js +2 -2
  15. package/lib/diagnostics.js.map +1 -1
  16. package/lib/index.d.ts +17 -1
  17. package/lib/index.d.ts.map +1 -1
  18. package/lib/index.js +17 -1
  19. package/lib/index.js.map +1 -1
  20. package/lib/ledger.d.ts +19 -2
  21. package/lib/ledger.d.ts.map +1 -1
  22. package/lib/ledger.js +371 -44
  23. package/lib/ledger.js.map +1 -1
  24. package/lib/linux-cgroups.d.ts +75 -0
  25. package/lib/linux-cgroups.d.ts.map +1 -0
  26. package/lib/linux-cgroups.js +517 -0
  27. package/lib/linux-cgroups.js.map +1 -0
  28. package/lib/linux-execution-contract.d.ts +123 -0
  29. package/lib/linux-execution-contract.d.ts.map +1 -0
  30. package/lib/linux-execution-contract.js +279 -0
  31. package/lib/linux-execution-contract.js.map +1 -0
  32. package/lib/linux-execution.d.ts +123 -0
  33. package/lib/linux-execution.d.ts.map +1 -0
  34. package/lib/linux-execution.js +1264 -0
  35. package/lib/linux-execution.js.map +1 -0
  36. package/lib/linux-job-recovery.d.ts +5 -0
  37. package/lib/linux-job-recovery.d.ts.map +1 -0
  38. package/lib/linux-job-recovery.js +63 -0
  39. package/lib/linux-job-recovery.js.map +1 -0
  40. package/lib/linux-namespace.d.ts +80 -0
  41. package/lib/linux-namespace.d.ts.map +1 -0
  42. package/lib/linux-namespace.js +471 -0
  43. package/lib/linux-namespace.js.map +1 -0
  44. package/lib/linux-repository-admission.d.ts +26 -0
  45. package/lib/linux-repository-admission.d.ts.map +1 -0
  46. package/lib/linux-repository-admission.js +64 -0
  47. package/lib/linux-repository-admission.js.map +1 -0
  48. package/lib/linux-repository-runner.d.ts +54 -0
  49. package/lib/linux-repository-runner.d.ts.map +1 -0
  50. package/lib/linux-repository-runner.js +614 -0
  51. package/lib/linux-repository-runner.js.map +1 -0
  52. package/lib/linux-runner-state-migration.d.ts +94 -0
  53. package/lib/linux-runner-state-migration.d.ts.map +1 -0
  54. package/lib/linux-runner-state-migration.js +463 -0
  55. package/lib/linux-runner-state-migration.js.map +1 -0
  56. package/lib/linux-runner-state.d.ts +53 -0
  57. package/lib/linux-runner-state.d.ts.map +1 -0
  58. package/lib/linux-runner-state.js +332 -0
  59. package/lib/linux-runner-state.js.map +1 -0
  60. package/lib/linux-runtime-source.d.ts +28 -0
  61. package/lib/linux-runtime-source.d.ts.map +1 -0
  62. package/lib/linux-runtime-source.js +237 -0
  63. package/lib/linux-runtime-source.js.map +1 -0
  64. package/lib/linux-runtime.d.ts +37 -0
  65. package/lib/linux-runtime.d.ts.map +1 -0
  66. package/lib/linux-runtime.js +192 -0
  67. package/lib/linux-runtime.js.map +1 -0
  68. package/lib/linux-system-snapshot.d.ts +47 -0
  69. package/lib/linux-system-snapshot.d.ts.map +1 -0
  70. package/lib/linux-system-snapshot.js +704 -0
  71. package/lib/linux-system-snapshot.js.map +1 -0
  72. package/lib/linux-user-namespace.d.ts +79 -0
  73. package/lib/linux-user-namespace.d.ts.map +1 -0
  74. package/lib/linux-user-namespace.js +234 -0
  75. package/lib/linux-user-namespace.js.map +1 -0
  76. package/lib/linux-verifier-runner.d.ts +27 -0
  77. package/lib/linux-verifier-runner.d.ts.map +1 -0
  78. package/lib/linux-verifier-runner.js +346 -0
  79. package/lib/linux-verifier-runner.js.map +1 -0
  80. package/lib/native-cgroup-roots.d.ts +20 -0
  81. package/lib/native-cgroup-roots.d.ts.map +1 -0
  82. package/lib/native-cgroup-roots.js +121 -0
  83. package/lib/native-cgroup-roots.js.map +1 -0
  84. package/lib/native-resources.d.ts +44 -0
  85. package/lib/native-resources.d.ts.map +1 -0
  86. package/lib/native-resources.js +354 -0
  87. package/lib/native-resources.js.map +1 -0
  88. package/lib/probe.d.ts +10 -0
  89. package/lib/probe.d.ts.map +1 -1
  90. package/lib/probe.js +52 -2
  91. package/lib/probe.js.map +1 -1
  92. package/lib/service.d.ts +1 -1
  93. package/lib/service.d.ts.map +1 -1
  94. package/lib/service.js +122 -9
  95. package/lib/service.js.map +1 -1
  96. package/lib/storage.d.ts.map +1 -1
  97. package/lib/storage.js +36 -6
  98. package/lib/storage.js.map +1 -1
  99. package/lib/tools.js +1 -1
  100. package/lib/tools.js.map +1 -1
  101. package/lib/types.d.ts +5 -1
  102. package/lib/types.d.ts.map +1 -1
  103. package/lib/verifier-runner.d.ts +4 -2
  104. package/lib/verifier-runner.d.ts.map +1 -1
  105. package/lib/verifier-runner.js +22 -1
  106. package/lib/verifier-runner.js.map +1 -1
  107. package/lib/version.d.ts +1 -1
  108. package/lib/version.js +1 -1
  109. package/package.json +15 -10
  110. package/runtime/linux-candidate-entry.py +82 -0
  111. package/runtime/linux-namespace-worker.mjs +561 -0
  112. package/runtime/linux-seccomp-policy.LICENSE +202 -0
  113. package/runtime/linux-seccomp-policy.json +886 -0
  114. package/runtime/linux-seccomp.py +106 -0
  115. package/runtime/linux-userns-launcher.py +149 -0
  116. package/runtime/linux-userns-proof.py +299 -0
@@ -0,0 +1,54 @@
1
+ import type { LinuxCgroupRoots } from './linux-cgroups.js';
2
+ import { type LinuxReceiptBinding, type LinuxRepositoryExecutionContract } from './linux-execution-contract.js';
3
+ import { type LinuxRepositoryArtifact } from './linux-execution.js';
4
+ import { type LinuxRuntime } from './linux-runtime.js';
5
+ import { type LinuxRunnerStateSeal } from './linux-runner-state.js';
6
+ import type { IsolationResult } from './types.js';
7
+ import { type LinuxSystemSnapshot } from './linux-system-snapshot.js';
8
+ import { type LinuxUserNamespaceMapping } from './linux-user-namespace.js';
9
+ export interface LinuxRepositoryRunnerConfig {
10
+ readonly backend: 'linux-native';
11
+ readonly stateRoot: string;
12
+ readonly stateSeal?: LinuxRunnerStateSeal;
13
+ readonly authorityDigest: string;
14
+ readonly expiresAt: number;
15
+ readonly maxRuns: number;
16
+ readonly maxTotalDurationMs: number;
17
+ readonly runtime: LinuxRuntime;
18
+ readonly cgroupRoots: LinuxCgroupRoots;
19
+ readonly limits: Readonly<LinuxRepositoryExecutionContract['limits']>;
20
+ readonly userNamespace?: LinuxUserNamespaceMapping;
21
+ readonly systemSnapshot?: LinuxSystemSnapshot;
22
+ }
23
+ export interface LinuxRepositoryRunnerRequest {
24
+ argv: readonly string[];
25
+ archive: {
26
+ bytes: number;
27
+ sha256: string;
28
+ };
29
+ artifacts: readonly string[];
30
+ }
31
+ export interface LinuxRepositoryRunnerResult {
32
+ result: IsolationResult;
33
+ artifacts: LinuxRepositoryArtifact[];
34
+ receiptBinding?: LinuxReceiptBinding;
35
+ contractDigest: string;
36
+ runtimeDigest: string;
37
+ }
38
+ /** Private finite repository authority. No archive factory or command is replayed
39
+ * for an existing key, including an interrupted or failed preparation. */
40
+ export declare class LinuxRepositoryRunner {
41
+ #private;
42
+ constructor(input: LinuxRepositoryRunnerConfig);
43
+ get contractDigest(): string;
44
+ get runtimeDigest(): string;
45
+ /** Factories own their Host subprocess cleanup through the combined signal;
46
+ * late completion can never open native execution admission. */
47
+ run: (key: string, request: LinuxRepositoryRunnerRequest, loadArchive: (signal: AbortSignal) => Promise<Uint8Array>, signal: AbortSignal) => Promise<LinuxRepositoryRunnerResult>;
48
+ /** Read the original successful execution only. This cannot admit, recover or
49
+ * replay a job, and close() drains every outstanding receipt read. */
50
+ inspectSuccessfulExecution: (key: string, signal?: AbortSignal) => Promise<LinuxRepositoryRunnerResult | undefined>;
51
+ inspectQuiescence(key: string): Promise<'quiescent' | 'unknown'>;
52
+ close: () => Promise<void>;
53
+ }
54
+ //# sourceMappingURL=linux-repository-runner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linux-repository-runner.d.ts","sourceRoot":"","sources":["../src/linux-repository-runner.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC1D,OAAO,EACL,KAAK,mBAAmB,EAAE,KAAK,gCAAgC,EAAE,MAAM,+BAA+B,CAAA;AACxG,OAAO,EACoD,KAAK,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AAGrH,OAAO,EAAgE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAA;AAEpH,OAAO,EAAyD,KAAK,oBAAoB,EAAE,MAAM,yBAAyB,CAAA;AAC1H,OAAO,KAAK,EAAmC,eAAe,EAAE,MAAM,YAAY,CAAA;AAClF,OAAO,EAAgD,KAAK,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AACnH,OAAO,EAAwE,KAAK,yBAAyB,EAAE,MAAM,2BAA2B,CAAA;AAEhJ,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAA;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,SAAS,CAAC,EAAE,oBAAoB,CAAA;IACzC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAA;IACnC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAA;IAC9B,QAAQ,CAAC,WAAW,EAAE,gBAAgB,CAAA;IACtC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,gCAAgC,CAAC,QAAQ,CAAC,CAAC,CAAA;IACrE,QAAQ,CAAC,aAAa,CAAC,EAAE,yBAAyB,CAAA;IAClD,QAAQ,CAAC,cAAc,CAAC,EAAE,mBAAmB,CAAA;CAC9C;AACD,MAAM,WAAW,4BAA4B;IAC3C,IAAI,EAAE,SAAS,MAAM,EAAE,CAAA;IACvB,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAA;IAC1C,SAAS,EAAE,SAAS,MAAM,EAAE,CAAA;CAC7B;AACD,MAAM,WAAW,2BAA2B;IAC1C,MAAM,EAAE,eAAe,CAAA;IACvB,SAAS,EAAE,uBAAuB,EAAE,CAAA;IACpC,cAAc,CAAC,EAAE,mBAAmB,CAAA;IACpC,cAAc,EAAE,MAAM,CAAA;IACtB,aAAa,EAAE,MAAM,CAAA;CACtB;AA8DD;0EAC0E;AAC1E,qBAAa,qBAAqB;;gBAsBpB,KAAK,EAAE,2BAA2B;IAgD9C,IAAI,cAAc,IAAI,MAAM,CAAwD;IACpF,IAAI,aAAa,IAAI,MAAM,CAAwC;IAgHnE;oEACgE;IAChE,GAAG,GAAI,KAAK,MAAM,EAAE,SAAS,4BAA4B,EAAE,aAAa,CAAC,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,UAAU,CAAC,EAAE,QAAQ,WAAW,KAAG,OAAO,CAAC,2BAA2B,CAAC,CAY/K;IA0HD;0EACsE;IACtE,0BAA0B,GAAI,KAAK,MAAM,EAAE,SAAS,WAAW,KAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAOjH;IA4BK,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAmBtE,KAAK,QAAa,OAAO,CAAC,IAAI,CAAC,CAQ9B;CACF"}