taskflow-core 0.1.8 → 0.2.1

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 (193) hide show
  1. package/README.md +248 -808
  2. package/dist/agents.d.ts +12 -0
  3. package/dist/agents.d.ts.map +1 -1
  4. package/dist/agents.js +29 -1
  5. package/dist/agents.js.map +1 -1
  6. package/dist/cwd-bridge.d.ts +61 -0
  7. package/dist/cwd-bridge.d.ts.map +1 -0
  8. package/dist/cwd-bridge.js +136 -0
  9. package/dist/cwd-bridge.js.map +1 -0
  10. package/dist/detached-runner.js +31 -5
  11. package/dist/detached-runner.js.map +1 -1
  12. package/dist/deterministic.d.ts +8 -0
  13. package/dist/deterministic.d.ts.map +1 -1
  14. package/dist/deterministic.js +23 -1
  15. package/dist/deterministic.js.map +1 -1
  16. package/dist/exec/driver.d.ts +48 -0
  17. package/dist/exec/driver.d.ts.map +1 -0
  18. package/dist/exec/driver.js +410 -0
  19. package/dist/exec/driver.js.map +1 -0
  20. package/dist/exec/events.d.ts +76 -0
  21. package/dist/exec/events.d.ts.map +1 -0
  22. package/dist/exec/events.js +108 -0
  23. package/dist/exec/events.js.map +1 -0
  24. package/dist/exec/fold.d.ts +45 -0
  25. package/dist/exec/fold.d.ts.map +1 -0
  26. package/dist/exec/fold.js +122 -0
  27. package/dist/exec/fold.js.map +1 -0
  28. package/dist/exec/index.d.ts +17 -0
  29. package/dist/exec/index.d.ts.map +1 -0
  30. package/dist/exec/index.js +17 -0
  31. package/dist/exec/index.js.map +1 -0
  32. package/dist/exec/kernel-policy.d.ts +35 -0
  33. package/dist/exec/kernel-policy.d.ts.map +1 -0
  34. package/dist/exec/kernel-policy.js +184 -0
  35. package/dist/exec/kernel-policy.js.map +1 -0
  36. package/dist/exec/step-kinds.d.ts +41 -0
  37. package/dist/exec/step-kinds.d.ts.map +1 -0
  38. package/dist/exec/step-kinds.js +599 -0
  39. package/dist/exec/step-kinds.js.map +1 -0
  40. package/dist/exec/step.d.ts +94 -0
  41. package/dist/exec/step.d.ts.map +1 -0
  42. package/dist/exec/step.js +454 -0
  43. package/dist/exec/step.js.map +1 -0
  44. package/dist/flowir/canonical-hash.d.ts +101 -0
  45. package/dist/flowir/canonical-hash.d.ts.map +1 -0
  46. package/dist/flowir/canonical-hash.js +219 -0
  47. package/dist/flowir/canonical-hash.js.map +1 -0
  48. package/dist/flowir/compile.d.ts +49 -0
  49. package/dist/flowir/compile.d.ts.map +1 -0
  50. package/dist/flowir/compile.js +232 -0
  51. package/dist/flowir/compile.js.map +1 -0
  52. package/dist/flowir/cond.d.ts +76 -0
  53. package/dist/flowir/cond.d.ts.map +1 -0
  54. package/dist/flowir/cond.js +214 -0
  55. package/dist/flowir/cond.js.map +1 -0
  56. package/dist/flowir/index.d.ts +20 -23
  57. package/dist/flowir/index.d.ts.map +1 -1
  58. package/dist/flowir/index.js +47 -35
  59. package/dist/flowir/index.js.map +1 -1
  60. package/dist/flowir/meta.d.ts +4 -4
  61. package/dist/flowir/meta.d.ts.map +1 -1
  62. package/dist/flowir/phasefp.d.ts.map +1 -1
  63. package/dist/flowir/phasefp.js +13 -1
  64. package/dist/flowir/phasefp.js.map +1 -1
  65. package/dist/flowir/schema.d.ts +260 -0
  66. package/dist/flowir/schema.d.ts.map +1 -0
  67. package/dist/flowir/schema.js +234 -0
  68. package/dist/flowir/schema.js.map +1 -0
  69. package/dist/flowir/translate.d.ts.map +1 -1
  70. package/dist/flowir/translate.js +3 -0
  71. package/dist/flowir/translate.js.map +1 -1
  72. package/dist/host/runner-types.d.ts +19 -0
  73. package/dist/host/runner-types.d.ts.map +1 -1
  74. package/dist/index.d.ts +4 -0
  75. package/dist/index.d.ts.map +1 -1
  76. package/dist/index.js +8 -0
  77. package/dist/index.js.map +1 -1
  78. package/dist/interpolate.d.ts +4 -0
  79. package/dist/interpolate.d.ts.map +1 -1
  80. package/dist/interpolate.js +14 -0
  81. package/dist/interpolate.js.map +1 -1
  82. package/dist/rates.d.ts +121 -0
  83. package/dist/rates.d.ts.map +1 -0
  84. package/dist/rates.js +187 -0
  85. package/dist/rates.js.map +1 -0
  86. package/dist/replay.d.ts +43 -50
  87. package/dist/replay.d.ts.map +1 -1
  88. package/dist/replay.js +629 -19
  89. package/dist/replay.js.map +1 -1
  90. package/dist/resources/authority.d.ts +35 -0
  91. package/dist/resources/authority.d.ts.map +1 -0
  92. package/dist/resources/authority.js +67 -0
  93. package/dist/resources/authority.js.map +1 -0
  94. package/dist/resources/backend.d.ts +302 -0
  95. package/dist/resources/backend.d.ts.map +1 -0
  96. package/dist/resources/backend.js +16 -0
  97. package/dist/resources/backend.js.map +1 -0
  98. package/dist/resources/baseline.d.ts +116 -0
  99. package/dist/resources/baseline.d.ts.map +1 -0
  100. package/dist/resources/baseline.js +447 -0
  101. package/dist/resources/baseline.js.map +1 -0
  102. package/dist/resources/canonical-json.d.ts +7 -0
  103. package/dist/resources/canonical-json.d.ts.map +1 -0
  104. package/dist/resources/canonical-json.js +75 -0
  105. package/dist/resources/canonical-json.js.map +1 -0
  106. package/dist/resources/errors.d.ts +23 -0
  107. package/dist/resources/errors.d.ts.map +1 -0
  108. package/dist/resources/errors.js +89 -0
  109. package/dist/resources/errors.js.map +1 -0
  110. package/dist/resources/execution.d.ts +90 -0
  111. package/dist/resources/execution.d.ts.map +1 -0
  112. package/dist/resources/execution.js +581 -0
  113. package/dist/resources/execution.js.map +1 -0
  114. package/dist/resources/index.d.ts +15 -0
  115. package/dist/resources/index.d.ts.map +1 -0
  116. package/dist/resources/index.js +15 -0
  117. package/dist/resources/index.js.map +1 -0
  118. package/dist/resources/journal.d.ts +138 -0
  119. package/dist/resources/journal.d.ts.map +1 -0
  120. package/dist/resources/journal.js +438 -0
  121. package/dist/resources/journal.js.map +1 -0
  122. package/dist/resources/leases.d.ts +51 -0
  123. package/dist/resources/leases.d.ts.map +1 -0
  124. package/dist/resources/leases.js +354 -0
  125. package/dist/resources/leases.js.map +1 -0
  126. package/dist/resources/permits.d.ts +52 -0
  127. package/dist/resources/permits.d.ts.map +1 -0
  128. package/dist/resources/permits.js +240 -0
  129. package/dist/resources/permits.js.map +1 -0
  130. package/dist/resources/persistence.d.ts +63 -0
  131. package/dist/resources/persistence.d.ts.map +1 -0
  132. package/dist/resources/persistence.js +522 -0
  133. package/dist/resources/persistence.js.map +1 -0
  134. package/dist/resources/registry.d.ts +56 -0
  135. package/dist/resources/registry.d.ts.map +1 -0
  136. package/dist/resources/registry.js +139 -0
  137. package/dist/resources/registry.js.map +1 -0
  138. package/dist/resources/resolve.d.ts +49 -0
  139. package/dist/resources/resolve.d.ts.map +1 -0
  140. package/dist/resources/resolve.js +309 -0
  141. package/dist/resources/resolve.js.map +1 -0
  142. package/dist/resources/sandbox.d.ts +72 -0
  143. package/dist/resources/sandbox.d.ts.map +1 -0
  144. package/dist/resources/sandbox.js +952 -0
  145. package/dist/resources/sandbox.js.map +1 -0
  146. package/dist/resources/schema.d.ts +195 -0
  147. package/dist/resources/schema.d.ts.map +1 -0
  148. package/dist/resources/schema.js +231 -0
  149. package/dist/resources/schema.js.map +1 -0
  150. package/dist/resources/types.d.ts +36 -0
  151. package/dist/resources/types.d.ts.map +1 -0
  152. package/dist/resources/types.js +75 -0
  153. package/dist/resources/types.js.map +1 -0
  154. package/dist/runner-core.d.ts +53 -0
  155. package/dist/runner-core.d.ts.map +1 -1
  156. package/dist/runner-core.js +521 -53
  157. package/dist/runner-core.js.map +1 -1
  158. package/dist/runtime/phases/approval.d.ts +23 -0
  159. package/dist/runtime/phases/approval.d.ts.map +1 -0
  160. package/dist/runtime/phases/approval.js +38 -0
  161. package/dist/runtime/phases/approval.js.map +1 -0
  162. package/dist/runtime/phases/expand.d.ts +29 -0
  163. package/dist/runtime/phases/expand.d.ts.map +1 -0
  164. package/dist/runtime/phases/expand.js +126 -0
  165. package/dist/runtime/phases/expand.js.map +1 -0
  166. package/dist/runtime/phases/parallel.d.ts +26 -0
  167. package/dist/runtime/phases/parallel.d.ts.map +1 -0
  168. package/dist/runtime/phases/parallel.js +15 -0
  169. package/dist/runtime/phases/parallel.js.map +1 -0
  170. package/dist/runtime/phases/race.d.ts +31 -0
  171. package/dist/runtime/phases/race.d.ts.map +1 -0
  172. package/dist/runtime/phases/race.js +220 -0
  173. package/dist/runtime/phases/race.js.map +1 -0
  174. package/dist/runtime/phases/script.d.ts +38 -0
  175. package/dist/runtime/phases/script.d.ts.map +1 -0
  176. package/dist/runtime/phases/script.js +177 -0
  177. package/dist/runtime/phases/script.js.map +1 -0
  178. package/dist/runtime.d.ts +68 -16
  179. package/dist/runtime.d.ts.map +1 -1
  180. package/dist/runtime.js +1091 -337
  181. package/dist/runtime.js.map +1 -1
  182. package/dist/schema.d.ts +104 -9
  183. package/dist/schema.d.ts.map +1 -1
  184. package/dist/schema.js +249 -32
  185. package/dist/schema.js.map +1 -1
  186. package/dist/store.d.ts +13 -0
  187. package/dist/store.d.ts.map +1 -1
  188. package/dist/store.js.map +1 -1
  189. package/dist/trace.d.ts +7 -1
  190. package/dist/trace.d.ts.map +1 -1
  191. package/dist/trace.js +33 -26
  192. package/dist/trace.js.map +1 -1
  193. package/package.json +7 -5
@@ -1 +1 @@
1
- {"version":3,"file":"replay.js","sourceRoot":"","sources":["../src/replay.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAsDH,+EAA+E;AAC/E,MAAM,CAAC,MAAM,0BAA0B,GACtC,oFAAoF,CAAC"}
1
+ {"version":3,"file":"replay.js","sourceRoot":"","sources":["../src/replay.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,35 @@
1
+ /** Invocation-scoped authority supplied by a trusted host, never by flow JSON. */
2
+ export interface InvocationAuthority {
3
+ principalId: string;
4
+ allowedGrantIds: ReadonlySet<string>;
5
+ allowedProviderControllers: ReadonlySet<string>;
6
+ allowedCredentialIds: ReadonlySet<string>;
7
+ allowResolveOnly: boolean;
8
+ allowUnsafeParallelWrites: boolean;
9
+ allowWorkspaceStateRestore: boolean;
10
+ }
11
+ export interface InvocationAuthorityInput {
12
+ principalId: string;
13
+ allowedGrantIds?: Iterable<string>;
14
+ allowedProviderControllers?: Iterable<string>;
15
+ allowedCredentialIds?: Iterable<string>;
16
+ allowResolveOnly?: boolean;
17
+ allowUnsafeParallelWrites?: boolean;
18
+ allowWorkspaceStateRestore?: boolean;
19
+ }
20
+ /** The minimum grant view needed for two-sided principal authorization. */
21
+ export interface GrantAuthorizationView {
22
+ grantId: string;
23
+ allowedPrincipals: ReadonlySet<string>;
24
+ }
25
+ export declare function readonlyStringSet(values: Iterable<string>, field: string): ReadonlySet<string>;
26
+ /**
27
+ * Host-side constructor that snapshots every allowlist.
28
+ *
29
+ * The returned sets expose no mutation methods, so changes to the host's input
30
+ * sets cannot widen a live invocation after authorization begins.
31
+ */
32
+ export declare function createHostInvocationAuthority(input: InvocationAuthorityInput): InvocationAuthority;
33
+ /** Both the invocation allowlist and the grant's principal ACL must agree. */
34
+ export declare function hasGrantAuthority(authority: InvocationAuthority, grant: GrantAuthorizationView): boolean;
35
+ //# sourceMappingURL=authority.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authority.d.ts","sourceRoot":"","sources":["../../src/resources/authority.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAElF,MAAM,WAAW,mBAAmB;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACrC,0BAA0B,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAChD,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAC1C,gBAAgB,EAAE,OAAO,CAAC;IAC1B,yBAAyB,EAAE,OAAO,CAAC;IACnC,0BAA0B,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,wBAAwB;IACxC,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACnC,0BAA0B,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC9C,oBAAoB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACrC;AAED,2EAA2E;AAC3E,MAAM,WAAW,sBAAsB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACvC;AAiDD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,CAI9F;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,wBAAwB,GAAG,mBAAmB,CAalG;AAED,8EAA8E;AAC9E,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,mBAAmB,EAAE,KAAK,EAAE,sBAAsB,GAAG,OAAO,CAKxG"}
@@ -0,0 +1,67 @@
1
+ /** Invocation-scoped authority supplied by a trusted host, never by flow JSON. */
2
+ class ReadonlySetSnapshot {
3
+ #values;
4
+ constructor(values) {
5
+ this.#values = new Set(values);
6
+ }
7
+ get size() {
8
+ return this.#values.size;
9
+ }
10
+ has(value) {
11
+ return this.#values.has(value);
12
+ }
13
+ entries() {
14
+ return this.#values.entries();
15
+ }
16
+ keys() {
17
+ return this.#values.keys();
18
+ }
19
+ values() {
20
+ return this.#values.values();
21
+ }
22
+ forEach(callbackfn, thisArg) {
23
+ for (const value of this.#values)
24
+ callbackfn.call(thisArg, value, value, this);
25
+ }
26
+ [Symbol.iterator]() {
27
+ return this.#values[Symbol.iterator]();
28
+ }
29
+ get [Symbol.toStringTag]() {
30
+ return "ReadonlySet";
31
+ }
32
+ }
33
+ function nonEmptyId(value, field) {
34
+ if (typeof value !== "string" || value.length === 0 || value.trim().length === 0 || /[\u0000-\u001f\u007f]/.test(value)) {
35
+ throw new TypeError(`${field} must be a non-empty logical identifier`);
36
+ }
37
+ return value.normalize("NFC");
38
+ }
39
+ export function readonlyStringSet(values, field) {
40
+ const normalized = [];
41
+ for (const value of values)
42
+ normalized.push(nonEmptyId(value, field));
43
+ return new ReadonlySetSnapshot(normalized);
44
+ }
45
+ /**
46
+ * Host-side constructor that snapshots every allowlist.
47
+ *
48
+ * The returned sets expose no mutation methods, so changes to the host's input
49
+ * sets cannot widen a live invocation after authorization begins.
50
+ */
51
+ export function createHostInvocationAuthority(input) {
52
+ return Object.freeze({
53
+ principalId: nonEmptyId(input.principalId, "principalId"),
54
+ allowedGrantIds: readonlyStringSet(input.allowedGrantIds ?? [], "allowedGrantIds"),
55
+ allowedProviderControllers: readonlyStringSet(input.allowedProviderControllers ?? [], "allowedProviderControllers"),
56
+ allowedCredentialIds: readonlyStringSet(input.allowedCredentialIds ?? [], "allowedCredentialIds"),
57
+ allowResolveOnly: input.allowResolveOnly === true,
58
+ allowUnsafeParallelWrites: input.allowUnsafeParallelWrites === true,
59
+ allowWorkspaceStateRestore: input.allowWorkspaceStateRestore === true,
60
+ });
61
+ }
62
+ /** Both the invocation allowlist and the grant's principal ACL must agree. */
63
+ export function hasGrantAuthority(authority, grant) {
64
+ return (authority.allowedGrantIds.has(grant.grantId) &&
65
+ grant.allowedPrincipals.has(authority.principalId));
66
+ }
67
+ //# sourceMappingURL=authority.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"authority.js","sourceRoot":"","sources":["../../src/resources/authority.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,302 @@
1
+ /**
2
+ * Host-neutral workspace execution policy contracts.
3
+ *
4
+ * These types describe authority which has already been authorized and resolved by
5
+ * a trusted host. They deliberately do not implement, or claim to implement, an
6
+ * operating-system sandbox.
7
+ */
8
+ import type { BoundCapabilityLifetime, PathIntent, ScopedCapability, WorkspaceAccess } from "./schema.ts";
9
+ import type { CanonicalLeaseKey, ExternalMutationModel, ExecutionOwner, VersionCommitMode } from "./types.ts";
10
+ import type { MutationPermit } from "./permits.ts";
11
+ import type { ResolvedPathRef } from "./resolve.ts";
12
+ import type { RunResult } from "../host/runner-types.ts";
13
+ import type { FileHandle } from "node:fs/promises";
14
+ export type { BoundCapabilityLifetime, CanonicalLeaseKey, ExternalMutationModel, ExecutionOwner, MutationPermit, PathIntent, ResolvedPathRef, ScopedCapability, VersionCommitMode, WorkspaceAccess, };
15
+ export type RestoreStrategy = "replace-scope" | "provider-native";
16
+ export type CredentialDelivery = {
17
+ mode: "opaque-broker";
18
+ brokerId: string;
19
+ maxTtlMs: number;
20
+ } | {
21
+ mode: "isolated-host-process";
22
+ scrubToolEnvironment: true;
23
+ denyProcessInspection: true;
24
+ } | {
25
+ mode: "unavailable";
26
+ };
27
+ export interface ProviderMetadataGrant {
28
+ metadataId: string;
29
+ kind: "exact-file";
30
+ contentDigest: string;
31
+ secretScanPolicyId: string;
32
+ }
33
+ export interface HostBaselinePolicy {
34
+ schemaVersion: 1;
35
+ policyId: string;
36
+ policyVersion: string;
37
+ bodyDigest: string;
38
+ readableSystemClasses: Array<"runtime" | "dynamic-libraries" | "ca-certificates">;
39
+ providerMetadata: ProviderMetadataGrant[];
40
+ credentialDelivery: CredentialDelivery;
41
+ temp: {
42
+ mode: "private-per-execution";
43
+ access: "read-write";
44
+ };
45
+ network?: "host-policy" | "none";
46
+ }
47
+ export interface SandboxGrant {
48
+ bindingId: string;
49
+ resourceDomainId: string;
50
+ providerInstanceId: string;
51
+ logicalWorkspaceId: string;
52
+ logicalPrefix: string;
53
+ physicalScopeRoot: string;
54
+ scopeKind: "directory" | "file";
55
+ access: WorkspaceAccess;
56
+ lifetime: BoundCapabilityLifetime;
57
+ }
58
+ export interface BoundCredentialRequirement {
59
+ credentialGrantId: string;
60
+ credentialId: string;
61
+ audience: string;
62
+ purpose: string;
63
+ ttlMs: number;
64
+ delivery: Exclude<CredentialDelivery, {
65
+ mode: "unavailable";
66
+ }>;
67
+ }
68
+ export interface SandboxPolicyPlan {
69
+ mode: "sandboxed" | "resolve-only";
70
+ cwd: ResolvedPathRef;
71
+ grants: SandboxGrant[];
72
+ baseline: HostBaselinePolicy;
73
+ credentialRequirements: BoundCredentialRequirement[];
74
+ policyDigest: string;
75
+ }
76
+ export interface SandboxFeatureSet {
77
+ maxGrants: number;
78
+ scopeKinds: Array<"file" | "directory">;
79
+ perGrantAccess: boolean;
80
+ denyAmbientUserData: boolean;
81
+ exactBaselineMounts: boolean;
82
+ privateTempPerExecution: boolean;
83
+ descendantEnforcement: boolean;
84
+ raceFreeFileBroker: boolean;
85
+ networkModes: Array<"host-policy" | "none">;
86
+ credentialModes: Array<"opaque-broker" | "isolated-host-process">;
87
+ }
88
+ export interface WorkspaceBackendCapabilities {
89
+ schemaVersion: 1;
90
+ backendId: string;
91
+ backendCapabilityVersion: string;
92
+ agent: "native-single-root" | "native-multi-root" | "resolve-only";
93
+ script: "native-single-root" | "native-multi-root" | "resolve-only";
94
+ sandboxFeatures: SandboxFeatureSet;
95
+ brokeredRead: boolean;
96
+ brokeredWrite: boolean;
97
+ versionCommitModes: VersionCommitMode[];
98
+ restoreStrategies: RestoreStrategy[];
99
+ baselinePolicyId: string;
100
+ }
101
+ export interface PhysicalBaselineMount {
102
+ mountId: string;
103
+ physicalPath: string;
104
+ access: "read-only" | "read-write";
105
+ }
106
+ export interface CredentialBrokerBinding {
107
+ credentialGrantId: string;
108
+ brokerGrantId: string;
109
+ expiresAt: string;
110
+ }
111
+ /** Result of a trusted adapter preparing the exact concrete policy. */
112
+ export interface ConcreteSandboxPreparation {
113
+ /** Must describe the real adapter result, never a static feature advertisement. */
114
+ assurance: "native-sandbox-prepared";
115
+ preparationId: string;
116
+ baselineMounts: PhysicalBaselineMount[];
117
+ credentialBindings: CredentialBrokerBinding[];
118
+ }
119
+ export interface ResolveOnlyPreparation {
120
+ assurance: "resolve-only-no-sandbox";
121
+ preparationId: string;
122
+ }
123
+ export type SandboxPreparationEvidence = ConcreteSandboxPreparation | ResolveOnlyPreparation;
124
+ declare const PREPARED_SANDBOX: unique symbol;
125
+ export interface PreparedSandboxPlan {
126
+ readonly [PREPARED_SANDBOX]: true;
127
+ readonly preparedPlanId: string;
128
+ readonly backendId: string;
129
+ readonly backendCapabilityVersion: string;
130
+ readonly owner: ExecutionOwner;
131
+ readonly policy: SandboxPolicyPlan;
132
+ readonly expiresAt: string;
133
+ /** Prevents resolve-only plans from being presented as sandboxed plans. */
134
+ readonly assurance: SandboxPreparationEvidence["assurance"];
135
+ }
136
+ declare const SEALED_SANDBOX: unique symbol;
137
+ export interface SandboxPlan {
138
+ readonly [SEALED_SANDBOX]: true;
139
+ readonly prepared: PreparedSandboxPlan;
140
+ readonly mutationPermits: readonly MutationPermit[];
141
+ readonly enforcementDigest: string;
142
+ }
143
+ declare const SANDBOX_ACTIVATION: unique symbol;
144
+ export interface SandboxActivation {
145
+ readonly [SANDBOX_ACTIVATION]: true;
146
+ readonly plan: SandboxPlan;
147
+ readonly activatedAt: string;
148
+ }
149
+ export interface AgentRequest {
150
+ agentName: string;
151
+ task: string;
152
+ model?: string;
153
+ thinking?: string;
154
+ tools?: string[];
155
+ idleTimeoutMs?: number;
156
+ signal?: AbortSignal;
157
+ }
158
+ export interface ScriptRequest {
159
+ /** Shell-free argv. Capability mode never interpolates a shell string. */
160
+ argv: string[];
161
+ stdin?: string;
162
+ timeoutMs: number;
163
+ signal?: AbortSignal;
164
+ }
165
+ export interface WorkspaceScriptResult {
166
+ stdout: string;
167
+ stderr: string;
168
+ exitCode: number | null;
169
+ timedOut: boolean;
170
+ stdoutOversize: boolean;
171
+ }
172
+ export interface FingerprintSelector {
173
+ type: "content" | "metadata";
174
+ algorithm: "sha256";
175
+ maxBytes?: number;
176
+ }
177
+ declare const PREPARED_FILE_BROKER: unique symbol;
178
+ export interface PreparedFileBrokerPlan {
179
+ readonly [PREPARED_FILE_BROKER]: true;
180
+ readonly preparedFilePlanId: string;
181
+ readonly operation: "read" | "write";
182
+ readonly owner: ExecutionOwner;
183
+ readonly ref: ResolvedPathRef;
184
+ readonly resourcePolicyDigest: string;
185
+ readonly expiresAt: string;
186
+ }
187
+ export interface FileBrokerReadPlan {
188
+ readonly prepared: PreparedFileBrokerPlan & {
189
+ operation: "read";
190
+ };
191
+ readonly enforcementDigest: string;
192
+ }
193
+ export interface FileBrokerWritePlan {
194
+ readonly prepared: PreparedFileBrokerPlan & {
195
+ operation: "write";
196
+ };
197
+ readonly permit: MutationPermit;
198
+ readonly enforcementDigest: string;
199
+ }
200
+ export interface ImmutableArtifactRef {
201
+ artifactId: string;
202
+ contentId: string;
203
+ kind: "phase-output" | "workspace-snapshot";
204
+ manifestDigest: string;
205
+ scopeDigest?: string;
206
+ }
207
+ export interface PostStateObservation {
208
+ contentId?: string;
209
+ restorableSnapshot?: ImmutableArtifactRef;
210
+ }
211
+ export type RestoreSafety = "taskflow-exclusive" | "atomic-content-cas" | "external-fencing" | "none";
212
+ export interface ResourceVersioningPlan {
213
+ commitMode: VersionCommitMode;
214
+ restore: {
215
+ mode: "none";
216
+ } | {
217
+ mode: "restorable-snapshot";
218
+ strategy: RestoreStrategy;
219
+ safety: RestoreSafety;
220
+ transactionGroupId: string;
221
+ };
222
+ externalMutation: ExternalMutationModel;
223
+ }
224
+ export interface RestoreStateRequest {
225
+ capability: ScopedCapability;
226
+ snapshot: ImmutableArtifactRef;
227
+ expectedBeforeContentId: string;
228
+ expectedScopeDigest: string;
229
+ }
230
+ declare const PREPARED_RESTORE: unique symbol;
231
+ export interface PreparedRestoreTransaction {
232
+ readonly [PREPARED_RESTORE]: true;
233
+ readonly transactionId: string;
234
+ readonly transactionGroupId: string;
235
+ readonly requests: RestoreStateRequest[];
236
+ readonly expiresAt: string;
237
+ }
238
+ export interface RestoreTransactionPlan {
239
+ prepared: PreparedRestoreTransaction;
240
+ permits: MutationPermit[];
241
+ enforcementDigest: string;
242
+ }
243
+ export interface RestoreMutationResult {
244
+ resourceDomainId: string;
245
+ observedAfterContentId: string;
246
+ scopeDigest: string;
247
+ }
248
+ export interface ProviderControllerGrant {
249
+ controllerId: string;
250
+ provider: "temp" | "dedicated" | "worktree" | "artifact";
251
+ baseBindingId?: string;
252
+ operations: ReadonlySet<"create" | "resume" | "snapshot" | "release" | "reconcile">;
253
+ }
254
+ export interface ProviderControlRequest {
255
+ operation: "create" | "resume" | "snapshot" | "release" | "reconcile";
256
+ providerInstanceId?: string;
257
+ parameters?: Readonly<Record<string, unknown>>;
258
+ }
259
+ export interface ProviderControlResult {
260
+ providerInstanceId: string;
261
+ artifact?: ImmutableArtifactRef;
262
+ }
263
+ /**
264
+ * Unified authority boundary for every data-plane filesystem/process action.
265
+ * Implementations must fail closed for unsupported methods; capability flags
266
+ * alone never prove that a concrete plan can be enforced.
267
+ */
268
+ export interface WorkspaceExecutionBackend {
269
+ capabilities(): WorkspaceBackendCapabilities;
270
+ versioning(capability: ScopedCapability): Promise<ResourceVersioningPlan>;
271
+ prepareSandbox(plan: SandboxPolicyPlan, owner: ExecutionOwner): Promise<PreparedSandboxPlan>;
272
+ sealSandbox(prepared: PreparedSandboxPlan, permits: MutationPermit[]): Promise<SandboxPlan> | SandboxPlan;
273
+ runAgent(plan: SandboxPlan, request: AgentRequest): Promise<RunResult>;
274
+ runScript(plan: SandboxPlan, request: ScriptRequest): Promise<WorkspaceScriptResult>;
275
+ prepareFileRead(ref: ResolvedPathRef, owner: ExecutionOwner): Promise<PreparedFileBrokerPlan & {
276
+ operation: "read";
277
+ }>;
278
+ prepareFileWrite(ref: ResolvedPathRef, owner: ExecutionOwner): Promise<PreparedFileBrokerPlan & {
279
+ operation: "write";
280
+ }>;
281
+ sealFileRead(prepared: PreparedFileBrokerPlan & {
282
+ operation: "read";
283
+ }): Promise<FileBrokerReadPlan>;
284
+ openRead(plan: FileBrokerReadPlan): Promise<FileHandle>;
285
+ sealFileWrite(prepared: PreparedFileBrokerPlan & {
286
+ operation: "write";
287
+ }, permit: MutationPermit): Promise<FileBrokerWritePlan>;
288
+ openWrite(plan: FileBrokerWritePlan): Promise<FileHandle>;
289
+ fingerprint(plan: FileBrokerReadPlan, selector: FingerprintSelector): Promise<string>;
290
+ observePostState(capability: ScopedCapability, permit: MutationPermit, plan: ResourceVersioningPlan): Promise<PostStateObservation>;
291
+ prepareRestoreTransaction(transactionId: string, requests: RestoreStateRequest[]): Promise<PreparedRestoreTransaction>;
292
+ sealRestoreTransaction(prepared: PreparedRestoreTransaction, permits: MutationPermit[]): Promise<RestoreTransactionPlan>;
293
+ restoreTransaction(plan: RestoreTransactionPlan): Promise<RestoreMutationResult[]>;
294
+ providerControl(grant: ProviderControllerGrant, request: ProviderControlRequest): Promise<ProviderControlResult>;
295
+ }
296
+ export type SandboxExecutionTarget = "agent" | "script";
297
+ export type SandboxPlanErrorCode = "TFWS_INVALID_POLICY" | "TFWS_POLICY_DIGEST_MISMATCH" | "TFWS_BASELINE_MISMATCH" | "TFWS_UNSUPPORTED_SANDBOX_POLICY" | "TFWS_RESOLVE_ONLY_NOT_AUTHORIZED" | "TFWS_PREPARED_PLAN_EXPIRED" | "TFWS_FOREIGN_PREPARED_PLAN" | "TFWS_MISSING_MUTATION_PERMIT" | "TFWS_INVALID_MUTATION_PERMIT" | "TFWS_ENFORCEMENT_DIGEST_MISMATCH" | "TFWS_PLAN_REPLAY";
298
+ export declare class SandboxPlanError extends Error {
299
+ readonly code: SandboxPlanErrorCode;
300
+ constructor(code: SandboxPlanErrorCode, message: string);
301
+ }
302
+ //# sourceMappingURL=backend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../src/resources/backend.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Host-neutral workspace execution policy contracts.
3
+ *
4
+ * These types describe authority which has already been authorized and resolved by
5
+ * a trusted host. They deliberately do not implement, or claim to implement, an
6
+ * operating-system sandbox.
7
+ */
8
+ export class SandboxPlanError extends Error {
9
+ code;
10
+ constructor(code, message) {
11
+ super(`${code}: ${message}`);
12
+ this.name = "SandboxPlanError";
13
+ this.code = code;
14
+ }
15
+ }
16
+ //# sourceMappingURL=backend.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend.js","sourceRoot":"","sources":["../../src/resources/backend.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA6WH,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IACjC,IAAI,CAAuB;IAEpC,YAAY,IAA0B,EAAE,OAAe;QACtD,KAAK,CAAC,GAAG,IAAI,KAAK,OAAO,EAAE,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;CACD"}
@@ -0,0 +1,116 @@
1
+ /**
2
+ * Exact host/OS evidence gating for workspace sandbox claims.
3
+ *
4
+ * A host version string or a static feature flag is not evidence. Sandboxed
5
+ * execution is enabled only when every field of the running target matches an
6
+ * approved, checked-in probe result. Missing and stale cells fail closed.
7
+ */
8
+ export declare const HOST_PROBE_HOSTS: readonly ["pi", "codex", "claude", "opencode", "grok"];
9
+ export type HostProbeHost = (typeof HOST_PROBE_HOSTS)[number];
10
+ export declare const HOST_PROBE_OSES: readonly ["macos", "linux", "windows"];
11
+ export type HostProbeOs = (typeof HOST_PROBE_OSES)[number];
12
+ export declare const HOST_PROBE_VERSION = "tfws-probe:v1";
13
+ export type HostProbeClassification = "sandboxed-single-root" | "sandboxed-multi-root" | "resolve-only" | "unsupported";
14
+ export interface HostProbeTarget {
15
+ host: HostProbeHost;
16
+ hostVersion: string;
17
+ hostBinarySha256: string;
18
+ os: HostProbeOs;
19
+ osVersion: string;
20
+ osBuild: string;
21
+ arch: "arm64" | "x64";
22
+ sandboxMechanismVersion: string;
23
+ backendId: string;
24
+ backendCapabilityVersion: string;
25
+ backendCapabilitiesSha256: string;
26
+ baselinePolicyId: string;
27
+ }
28
+ export interface HostProbeDecision {
29
+ owner: string;
30
+ status: "approved" | "rejected";
31
+ reason: string;
32
+ }
33
+ export interface HostProbeEvidence {
34
+ /** Repository-relative, redacted raw probe result. */
35
+ path: string;
36
+ sha256: string;
37
+ }
38
+ export interface HostSupportCell {
39
+ target: HostProbeTarget;
40
+ classification: HostProbeClassification;
41
+ agent: HostProbeEvidence;
42
+ script: HostProbeEvidence;
43
+ fileBroker: HostProbeEvidence;
44
+ decision: HostProbeDecision;
45
+ }
46
+ export interface HostSupportBaseline {
47
+ schemaVersion: 1;
48
+ baselineId: string;
49
+ cells: HostSupportCell[];
50
+ }
51
+ export declare const PROCESS_SANDBOX_EVIDENCE_CHECKS: readonly ["exactCwd", "readInsideReadOnly", "writeInsideReadOnlyDenied", "readInsideReadWrite", "writeInsideReadWrite", "siblingScopeDenied", "outsideScopeDenied", "symlinkEscapeDenied", "ambientUserDataDenied", "privateTempEnforced", "descendantEnforcement", "abortDescendantCleanup", "networkPolicyEnforced", "credentialIsolationEnforced", "baselineRuntimeUsable", "resolverOpenPathSwapDenied", "exactMetadataNoFollow", "unsupportedPolicyFailsClosed"];
52
+ export declare const FILE_BROKER_EVIDENCE_CHECKS: readonly ["readInsideReadOnly", "writeInsideReadOnlyDenied", "readInsideReadWrite", "writeInsideReadWrite", "siblingScopeDenied", "outsideScopeDenied", "symlinkEscapeDenied", "brokeredReadNoFollow", "brokeredWriteNoFollow", "fingerprintNoFollow", "resolverOpenPathSwapDenied", "abortCleanup", "exactMetadataNoFollow", "unsupportedPolicyFailsClosed"];
53
+ export type ProcessSandboxEvidenceCheck = (typeof PROCESS_SANDBOX_EVIDENCE_CHECKS)[number];
54
+ export type FileBrokerEvidenceCheck = (typeof FILE_BROKER_EVIDENCE_CHECKS)[number];
55
+ export interface HostProbeSuiteEvidence<Check extends string> {
56
+ pass: boolean;
57
+ checks: Record<Check, boolean>;
58
+ }
59
+ export interface HostProbeResult {
60
+ target: HostProbeTarget;
61
+ classification: HostProbeClassification;
62
+ agent: HostProbeSuiteEvidence<ProcessSandboxEvidenceCheck>;
63
+ script: HostProbeSuiteEvidence<ProcessSandboxEvidenceCheck>;
64
+ fileBroker: HostProbeSuiteEvidence<FileBrokerEvidenceCheck>;
65
+ }
66
+ export interface HostProbeEvidenceBundle {
67
+ schemaVersion: 1;
68
+ probeVersion: string;
69
+ results: HostProbeResult[];
70
+ }
71
+ declare const VERIFIED_HOST_SUPPORT_BASELINE: unique symbol;
72
+ declare const VERIFIED_SANDBOX_HOST_APPROVAL: unique symbol;
73
+ export interface VerifiedHostSupportBaseline extends HostSupportBaseline {
74
+ readonly [VERIFIED_HOST_SUPPORT_BASELINE]: true;
75
+ }
76
+ /** Process-local authorization minted only for an exact approved evidence cell. */
77
+ export interface VerifiedSandboxHostApproval {
78
+ readonly [VERIFIED_SANDBOX_HOST_APPROVAL]: true;
79
+ readonly baselineId: string;
80
+ readonly target: HostProbeTarget;
81
+ readonly classification: "sandboxed-single-root" | "sandboxed-multi-root";
82
+ }
83
+ export interface HostSupportBaselineLoadOptions {
84
+ repositoryRoot: string;
85
+ /** Repository-relative baseline path. */
86
+ baselinePath?: string;
87
+ maxEvidenceBytes?: number;
88
+ }
89
+ export type HostSupportMatch = {
90
+ ok: true;
91
+ cell: HostSupportCell;
92
+ approval: VerifiedSandboxHostApproval;
93
+ } | {
94
+ ok: false;
95
+ reason: string;
96
+ };
97
+ export declare function hostProbeTargetsEqual(left: HostProbeTarget, right: HostProbeTarget): boolean;
98
+ export declare function isExactHostProbeTarget(value: unknown): value is HostProbeTarget;
99
+ /** Validate trusted baseline data before it can authorize a sandbox claim. */
100
+ export declare function validateHostSupportBaseline(value: unknown): string[];
101
+ /** Load and verify the checked-in finite allowlist plus every evidence body it
102
+ * relies on. Matcher authorization accepts only the process-local branded
103
+ * snapshot returned here; shape-correct caller data is never authority. */
104
+ export declare function loadVerifiedHostSupportBaseline(options: HostSupportBaselineLoadOptions): VerifiedHostSupportBaseline;
105
+ /**
106
+ * Match a live target against the finite approved evidence set.
107
+ *
108
+ * Only a sandboxed classification with an approved owner decision is a match.
109
+ * Resolve-only/unsupported cells remain useful audit evidence but never enable
110
+ * a sandboxed bridge.
111
+ */
112
+ export declare function matchSandboxedHostTarget(baseline: HostSupportBaseline, target: HostProbeTarget): HostSupportMatch;
113
+ /** Shape-correct, cloned, or deserialized approval objects are not authority. */
114
+ export declare function isVerifiedSandboxHostApproval(value: unknown): value is VerifiedSandboxHostApproval;
115
+ export {};
116
+ //# sourceMappingURL=baseline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"baseline.d.ts","sourceRoot":"","sources":["../../src/resources/baseline.ts"],"names":[],"mappings":"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"}