ws-spec-kit 0.1.0-beta.1 → 0.1.0-beta.3

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 (95) hide show
  1. package/README.md +2 -2
  2. package/dist/adapters/connectors/git-native.d.ts +4 -1
  3. package/dist/adapters/connectors/git-native.js +87 -23
  4. package/dist/adapters/connectors/git-native.js.map +1 -1
  5. package/dist/adapters/connectors/github-cli.d.ts +1 -0
  6. package/dist/adapters/connectors/github-cli.js +1 -0
  7. package/dist/adapters/connectors/github-cli.js.map +1 -1
  8. package/dist/adapters/connectors/gitlab-cli.d.ts +1 -0
  9. package/dist/adapters/connectors/gitlab-cli.js +1 -0
  10. package/dist/adapters/connectors/gitlab-cli.js.map +1 -1
  11. package/dist/adapters/connectors/lark-cli.d.ts +1 -0
  12. package/dist/adapters/connectors/lark-cli.js +2 -0
  13. package/dist/adapters/connectors/lark-cli.js.map +1 -1
  14. package/dist/adapters/process/spawn-json.d.ts +2 -1
  15. package/dist/adapters/process/spawn-json.js +13 -0
  16. package/dist/adapters/process/spawn-json.js.map +1 -1
  17. package/dist/adapters/skills/install.js +76 -13
  18. package/dist/adapters/skills/install.js.map +1 -1
  19. package/dist/application/acquire.js +60 -30
  20. package/dist/application/acquire.js.map +1 -1
  21. package/dist/application/artifact.js +12 -5
  22. package/dist/application/artifact.js.map +1 -1
  23. package/dist/application/decide.js +39 -6
  24. package/dist/application/decide.js.map +1 -1
  25. package/dist/application/external-action.d.ts +3 -0
  26. package/dist/application/external-action.js +220 -54
  27. package/dist/application/external-action.js.map +1 -1
  28. package/dist/application/snapshot.d.ts +2 -1
  29. package/dist/application/snapshot.js +5 -1
  30. package/dist/application/snapshot.js.map +1 -1
  31. package/dist/application/start.js +3 -35
  32. package/dist/application/start.js.map +1 -1
  33. package/dist/application/state.d.ts +1 -0
  34. package/dist/application/state.js +7 -46
  35. package/dist/application/state.js.map +1 -1
  36. package/dist/application/submit.js +17 -4
  37. package/dist/application/submit.js.map +1 -1
  38. package/dist/cli/main.js +1 -1
  39. package/dist/domain/digests.d.ts +1 -1
  40. package/dist/domain/digests.js +27 -3
  41. package/dist/domain/digests.js.map +1 -1
  42. package/dist/domain/workflow.d.ts +2 -1
  43. package/dist/engine/approvals.d.ts +36 -3
  44. package/dist/engine/approvals.js +115 -23
  45. package/dist/engine/approvals.js.map +1 -1
  46. package/dist/engine/archive.d.ts +1 -0
  47. package/dist/engine/archive.js +9 -4
  48. package/dist/engine/archive.js.map +1 -1
  49. package/dist/engine/compiler.js +2 -1
  50. package/dist/engine/compiler.js.map +1 -1
  51. package/dist/engine/external-effects/authorization.d.ts +3 -0
  52. package/dist/engine/external-effects/authorization.js +8 -0
  53. package/dist/engine/external-effects/authorization.js.map +1 -1
  54. package/dist/engine/scheduler.js +3 -9
  55. package/dist/engine/scheduler.js.map +1 -1
  56. package/dist/protocol/application.d.ts +25 -4
  57. package/dist/protocol/public-contract.d.ts +5 -5
  58. package/dist/protocol/public-contract.js +6 -5
  59. package/dist/protocol/public-contract.js.map +1 -1
  60. package/dist/protocol/work-package.d.ts +20 -2
  61. package/dist/registry/connectors/external-executor.js +5 -4
  62. package/dist/registry/connectors/external-executor.js.map +1 -1
  63. package/dist/registry/connectors/requirement-source.d.ts +3 -1
  64. package/dist/registry/connectors/requirement-source.js +9 -4
  65. package/dist/registry/connectors/requirement-source.js.map +1 -1
  66. package/dist/registry/connectors/secret-detector.d.ts +1 -0
  67. package/dist/registry/connectors/secret-detector.js +14 -1
  68. package/dist/registry/connectors/secret-detector.js.map +1 -1
  69. package/dist/registry/skills/resolver.d.ts +3 -1
  70. package/dist/registry/skills/resolver.js +3 -2
  71. package/dist/registry/skills/resolver.js.map +1 -1
  72. package/dist/schemas/definitions.d.ts +1 -1
  73. package/dist/schemas/definitions.js +217 -6
  74. package/dist/schemas/definitions.js.map +1 -1
  75. package/dist/storage/control-plane.d.ts +13 -0
  76. package/dist/storage/control-plane.js +49 -8
  77. package/dist/storage/control-plane.js.map +1 -1
  78. package/dist/storage/events.d.ts +1 -1
  79. package/dist/storage/events.js.map +1 -1
  80. package/dist/storage/work-items.d.ts +8 -1
  81. package/dist/storage/work-items.js +150 -35
  82. package/dist/storage/work-items.js.map +1 -1
  83. package/dist/workflow-package/types.d.ts +2 -0
  84. package/dist/workflow-package/types.js.map +1 -1
  85. package/dist/workflow-package/workflow-v1.js +4 -2
  86. package/dist/workflow-package/workflow-v1.js.map +1 -1
  87. package/package.json +2 -2
  88. package/resources/workflows/documentation-delivery/workflow.yaml +15 -0
  89. package/resources/workflows/feature-delivery/workflow.yaml +18 -0
  90. package/schemas/builtin-agent-action-v1.schema.json +20 -0
  91. package/schemas/builtin-agent-action-v2.schema.json +867 -0
  92. package/schemas/builtin-application-decision-input-v2.schema.json +381 -0
  93. package/schemas/builtin-work-item-v1.schema.json +4 -2
  94. package/schemas/builtin-work-package-v1.schema.json +20 -0
  95. package/schemas/builtin-work-package-v2.schema.json +293 -0
@@ -88,6 +88,28 @@ async function artifactPaths(root) {
88
88
  }
89
89
  return result.sort((left, right) => Buffer.from(left).compare(Buffer.from(right)));
90
90
  }
91
+ async function authorityArtifactPaths(root) {
92
+ const result = [];
93
+ const walk = async (directory, relative) => {
94
+ const entries = await readdir(directory, { withFileTypes: true });
95
+ entries.sort((left, right) => Buffer.from(left.name).compare(Buffer.from(right.name)));
96
+ for (const entry of entries) {
97
+ const childRelative = `${relative}/${entry.name}`;
98
+ if (entry.isDirectory())
99
+ await walk(path.join(directory, entry.name), childRelative);
100
+ else
101
+ result.push(childRelative);
102
+ }
103
+ };
104
+ try {
105
+ await walk(path.join(root, "artifacts"), "artifacts");
106
+ }
107
+ catch (error) {
108
+ if (error.code !== "ENOENT")
109
+ throw error;
110
+ }
111
+ return result;
112
+ }
91
113
  export async function computeWorkspaceSnapshot(cwd) {
92
114
  const root = await repositoryRoot(cwd);
93
115
  const paths = (await listedPaths(root)).filter((candidate) => !artifactPath(candidate)
@@ -98,9 +120,11 @@ export async function computeWorkspaceTreeDigest(cwd) {
98
120
  const entries = await computeWorkspaceSnapshot(cwd);
99
121
  return sha256(`${JSON.stringify({ version: 1, entries })}\n`);
100
122
  }
101
- export async function computeArtifactTreeDigest(cwd) {
102
- const root = await repositoryRoot(cwd);
103
- const entries = await snapshotPaths(root, await artifactPaths(root));
123
+ export async function computeArtifactTreeDigest(cwd, artifactRoot) {
124
+ const root = artifactRoot ?? await repositoryRoot(cwd);
125
+ const entries = artifactRoot === undefined
126
+ ? await snapshotPaths(root, await artifactPaths(root))
127
+ : await snapshotPaths(root, await authorityArtifactPaths(root));
104
128
  return sha256(`${JSON.stringify({ version: 1, entries })}\n`);
105
129
  }
106
130
  //# sourceMappingURL=digests.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"digests.js","sourceRoot":"","sources":["../../src/domain/digests.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"digests.js","sourceRoot":"","sources":["../../src/domain/digests.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { ResolvedSkill } from "../registry/skills/types.js";
2
- import type { ProfileAudit, ProfilePublishing, WorkflowActorRole, WorkflowRetry } from "../workflow-package/types.js";
2
+ import type { ProfileAudit, ProfilePublishing, WorkflowActorRole, WorkflowRetry, WorkspaceMode } from "../workflow-package/types.js";
3
3
  export type SecurityClass = "agent" | "local-read" | "local-write" | "external-read" | "external-write" | "control";
4
4
  export type ProfileId = "quick" | "standard" | "governed";
5
5
  export interface ArtifactRequirement {
@@ -15,6 +15,7 @@ export interface ArtifactDeclaration {
15
15
  export interface CompiledStep {
16
16
  id: string;
17
17
  uses: string;
18
+ workspace: WorkspaceMode;
18
19
  actorRole?: WorkflowActorRole;
19
20
  securityClass: SecurityClass;
20
21
  needs: string[];
@@ -1,6 +1,33 @@
1
1
  import type { ArtifactReference } from "../protocol/work-package.js";
2
- import { type RuntimeApproval } from "../storage/control-plane.js";
2
+ import { readControlPlane, type RuntimeApproval } from "../storage/control-plane.js";
3
3
  type ApprovalArtifactReference = Pick<NonNullable<RuntimeApproval["artifacts"]>[number], "artifactType" | "outputId" | "artifactId" | "schemaVersion" | "path" | "revision" | "contentHash" | "mediaType">;
4
+ export declare function approvalRevisionEvidenceKey(stageId: string): string;
5
+ export declare function normalizeApprovalFeedback(raw: string): string;
6
+ export declare function approvalFeedbackDigest(feedback: string): string;
7
+ export interface RejectionConfirmation {
8
+ requestId: string;
9
+ expectedDigest: string;
10
+ actor: string;
11
+ feedbackDigest: string;
12
+ tokenHash: string;
13
+ issuedAt: string;
14
+ consumedAt?: string;
15
+ }
16
+ export declare function rejectionConfirmationEvidenceKey(tokenHash: string): string;
17
+ export declare function confirmArtifactRejection(input: {
18
+ cwd: string;
19
+ workItemId: string;
20
+ requestId: string;
21
+ expectedDigest: string;
22
+ actor: string;
23
+ feedback: string;
24
+ terminal: {
25
+ isTTY?: boolean;
26
+ };
27
+ }): Promise<{
28
+ token: string;
29
+ feedbackDigest: string;
30
+ }>;
4
31
  export declare function sortApprovalArtifacts<T extends ApprovalArtifactReference>(artifacts: readonly T[]): T[];
5
32
  export declare class ApprovalError extends Error {
6
33
  readonly code: string;
@@ -29,7 +56,7 @@ export declare function requestArtifactApproval(input: {
29
56
  artifactType: string;
30
57
  actor?: string;
31
58
  }): Promise<RuntimeApproval>;
32
- export declare function decideArtifactApproval(input: {
59
+ export declare function decideArtifactApproval<T = RuntimeApproval>(input: {
33
60
  cwd: string;
34
61
  workItemId: string;
35
62
  requestId: string;
@@ -37,8 +64,14 @@ export declare function decideArtifactApproval(input: {
37
64
  terminal: {
38
65
  isTTY?: boolean;
39
66
  };
67
+ feedback?: string;
68
+ rejectionToken?: string;
40
69
  reason?: string;
41
70
  actor?: string;
42
71
  expectedDigest?: string;
43
- }): Promise<RuntimeApproval>;
72
+ finalize?: (projection: Awaited<ReturnType<typeof readControlPlane>>, approval: RuntimeApproval) => Promise<{
73
+ projection: Awaited<ReturnType<typeof readControlPlane>>;
74
+ value: T;
75
+ }>;
76
+ }): Promise<T>;
44
77
  export {};
@@ -4,9 +4,62 @@ import * as canonicalizeModule from "canonicalize";
4
4
  import { computeWorkspaceTreeDigest, sha256 } from "../domain/digests.js";
5
5
  import { verifyArtifact } from "../domain/artifacts.js";
6
6
  import { transitionStage, transitionWorkItem } from "../domain/states.js";
7
- import { readControlPlane } from "../storage/control-plane.js";
7
+ import { readControlPlane, resolveWorkItemContext } from "../storage/control-plane.js";
8
+ import { inspectCredentialText } from "../registry/connectors/secret-detector.js";
8
9
  import { mutateControlPlane } from "./scheduler.js";
9
10
  const canonicalize = canonicalizeModule.default;
11
+ export function approvalRevisionEvidenceKey(stageId) {
12
+ return `approval-revision:${stageId}`;
13
+ }
14
+ const unpairedSurrogate = /[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/u;
15
+ const privateKey = /-----BEGIN (?:[A-Z0-9 ]+ )?PRIVATE KEY-----|-----BEGIN PGP PRIVATE KEY BLOCK-----|(?:^|\s)OPENSSH PRIVATE KEY(?:\s|$)/iu;
16
+ const awsAccessKey = /\b(?:AKIA|ASIA)[A-Z0-9]{16}\b/u;
17
+ const jwt = /\beyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\b/u;
18
+ const passwordConnectionString = /\b(?:[a-z][a-z0-9+.-]*:\/\/[^\s:@/]+:[^\s@/]+@|(?:password|pwd)\s*=\s*[^;\s]+)/iu;
19
+ export function normalizeApprovalFeedback(raw) {
20
+ const feedback = raw.replace(/\r\n?/gu, "\n").trim();
21
+ if (feedback === "" || unpairedSurrogate.test(feedback) || Buffer.byteLength(feedback, "utf8") > 8192
22
+ || privateKey.test(feedback) || awsAccessKey.test(feedback) || jwt.test(feedback) || passwordConnectionString.test(feedback)
23
+ || !inspectCredentialText(feedback, 8192).ok) {
24
+ throw new ApprovalError("WSSPEC_APPROVAL_FEEDBACK_INVALID", "修改意见为空、过长、编码异常或包含凭据样式内容。");
25
+ }
26
+ return feedback;
27
+ }
28
+ export function approvalFeedbackDigest(feedback) {
29
+ return sha256(normalizeApprovalFeedback(feedback));
30
+ }
31
+ export function rejectionConfirmationEvidenceKey(tokenHash) {
32
+ return `approval-rejection-confirmation:${tokenHash}`;
33
+ }
34
+ export async function confirmArtifactRejection(input) {
35
+ if (input.terminal.isTTY !== true)
36
+ throw new ApprovalError("WSSPEC_INTERACTIVE_TTY_REQUIRED", "修改意见确认必须来自真实交互式 TTY。");
37
+ const feedbackDigest = approvalFeedbackDigest(input.feedback);
38
+ const confirmationIdentity = sha256(canonicalize({
39
+ requestId: input.requestId,
40
+ expectedDigest: input.expectedDigest,
41
+ actor: input.actor,
42
+ feedbackDigest,
43
+ }));
44
+ const token = `rejection-${confirmationIdentity.slice("sha256:".length)}`;
45
+ const tokenHash = sha256(token);
46
+ const confirmation = {
47
+ requestId: input.requestId, expectedDigest: input.expectedDigest, actor: input.actor, feedbackDigest, tokenHash,
48
+ issuedAt: new Date().toISOString(),
49
+ };
50
+ await mutateControlPlane({
51
+ cwd: input.cwd, workItemId: input.workItemId, eventType: "approval.rejection-confirmed",
52
+ idempotencyKey: `approval-rejection-confirmation:${confirmationIdentity}`, actor: input.actor,
53
+ operationInput: { requestId: input.requestId, expectedDigest: input.expectedDigest, actor: input.actor, feedbackDigest },
54
+ mutate: (current) => {
55
+ const request = assertPendingApproval(current, current.approvals[input.requestId], input.expectedDigest);
56
+ if (request.contentHash !== input.expectedDigest)
57
+ throw new ApprovalError("WSSPEC_APPROVAL_DIGEST_MISMATCH", "审批摘要与当前请求不一致。");
58
+ return { projection: { ...current, evidence: { ...current.evidence, [rejectionConfirmationEvidenceKey(tokenHash)]: confirmation } }, value: confirmation };
59
+ },
60
+ });
61
+ return { token, feedbackDigest };
62
+ }
10
63
  function normalizedApprovalArtifact(artifact) {
11
64
  return {
12
65
  artifactType: artifact.artifactType,
@@ -47,12 +100,17 @@ export function approvalBindingDigest(input) {
47
100
  return sha256(binding);
48
101
  }
49
102
  export async function prepareArtifactApproval(input) {
50
- const worktree = await worktreeFor(input.cwd, input.workItemId);
103
+ const context = await resolveWorkItemContext(input.cwd, input.workItemId);
104
+ const worktree = context.executionWorktree;
105
+ const artifactRoot = context.materialized ? worktree : context.authorityRoot;
106
+ const physicalArtifactPath = (referencePath) => context.materialized
107
+ ? path.join(artifactRoot, referencePath)
108
+ : path.join(artifactRoot, referencePath.replace(`.wsspec/work-items/${input.workItemId}/`, ""));
51
109
  const artifacts = await Promise.all(input.artifacts.map(async (reference) => {
52
110
  if (reference.path === undefined)
53
111
  throw new ApprovalError("WSSPEC_ARTIFACT_REFERENCE_INVALID", `Artifact ${reference.artifactType} 缺少路径。`);
54
- const verified = await verifyArtifact(path.join(worktree, reference.path), {
55
- repositoryRoot: worktree,
112
+ const verified = await verifyArtifact(physicalArtifactPath(reference.path), {
113
+ repositoryRoot: artifactRoot,
56
114
  artifactType: reference.artifactType,
57
115
  workItemId: input.workItemId,
58
116
  stageId: input.stageId,
@@ -62,12 +120,12 @@ export async function prepareArtifactApproval(input) {
62
120
  || (reference.revision !== undefined && reference.revision !== verified.revision)) {
63
121
  throw new ApprovalError("WSSPEC_ARTIFACT_REFERENCE_INVALID", `Artifact ${reference.artifactType} 引用与文件不一致。`);
64
122
  }
65
- return verified;
123
+ return { ...verified, path: reference.path };
66
124
  }));
67
125
  const sortedArtifacts = sortApprovalArtifacts(artifacts);
68
126
  const artifactContents = await Promise.all(sortedArtifacts.map(async (artifact) => ({
69
127
  artifact,
70
- content: await readFile(path.join(worktree, artifact.path), "utf8"),
128
+ content: await readFile(physicalArtifactPath(artifact.path), "utf8"),
71
129
  })));
72
130
  const contentHash = approvalBindingDigest({ stageId: input.stageId, attemptId: input.attemptId, artifacts: sortedArtifacts });
73
131
  const artifactPath = sortedArtifacts[0]?.path;
@@ -90,10 +148,7 @@ export async function prepareArtifactApproval(input) {
90
148
  };
91
149
  }
92
150
  async function worktreeFor(cwd, workItemId) {
93
- const projection = await readControlPlane(cwd, workItemId);
94
- const locator = JSON.parse(await readFile(path.join(path.dirname(projection.controlPlane), "locator.json"), "utf8"));
95
- const cache = JSON.parse(await readFile(path.resolve(projection.controlPlane, "../../../repository.json"), "utf8"));
96
- return path.join(cache.repositoryRoot, locator.worktree);
151
+ return (await resolveWorkItemContext(cwd, workItemId)).executionWorktree;
97
152
  }
98
153
  export async function requestArtifactApproval(input) {
99
154
  let projection = await readControlPlane(input.cwd, input.workItemId);
@@ -141,7 +196,9 @@ function assertPendingApproval(current, request, expectedDigest) {
141
196
  }
142
197
  return pending;
143
198
  }
144
- async function verifyApprovalArtifacts(worktree, workItemId, request) {
199
+ async function verifyApprovalArtifacts(cwd, workItemId, request) {
200
+ const context = await resolveWorkItemContext(cwd, workItemId);
201
+ const artifactRoot = context.materialized ? context.executionWorktree : context.authorityRoot;
145
202
  const references = request.artifacts ?? (request.artifactPath === undefined ? [] : [{
146
203
  artifactType: path.basename(request.artifactPath, ".md"),
147
204
  schemaVersion: 1,
@@ -149,13 +206,19 @@ async function verifyApprovalArtifacts(worktree, workItemId, request) {
149
206
  contentHash: request.contentHash,
150
207
  revision: 1,
151
208
  }]);
152
- const verifiedReferences = await Promise.all(references.map((reference) => verifyArtifact(path.join(worktree, reference.path), {
153
- repositoryRoot: worktree,
154
- artifactType: reference.artifactType,
155
- workItemId,
156
- stageId: request.stageId,
157
- attemptId: request.attemptId,
158
- })));
209
+ const verifiedReferences = await Promise.all(references.map(async (reference) => {
210
+ const physicalPath = context.materialized
211
+ ? reference.path
212
+ : reference.path.replace(`.wsspec/work-items/${workItemId}/`, "");
213
+ const verified = await verifyArtifact(path.join(artifactRoot, physicalPath), {
214
+ repositoryRoot: artifactRoot,
215
+ artifactType: reference.artifactType,
216
+ workItemId,
217
+ stageId: request.stageId,
218
+ attemptId: request.attemptId,
219
+ });
220
+ return { ...verified, path: reference.path };
221
+ }));
159
222
  const sortedVerifiedReferences = sortApprovalArtifacts(verifiedReferences);
160
223
  if (request.artifacts !== undefined) {
161
224
  const boundReferences = sortApprovalArtifacts(request.artifacts);
@@ -194,8 +257,18 @@ async function expireArtifactApproval(input) {
194
257
  });
195
258
  }
196
259
  export async function decideArtifactApproval(input) {
197
- if (input.terminal.isTTY !== true)
198
- throw new ApprovalError("WSSPEC_INTERACTIVE_TTY_REQUIRED", "批准或拒绝必须来自真实交互式 TTY。");
260
+ const rawFeedback = input.feedback ?? (input.terminal.isTTY === true ? input.reason : undefined);
261
+ const feedback = rawFeedback === undefined ? undefined : normalizeApprovalFeedback(rawFeedback);
262
+ if (input.decision === "approve" && (feedback !== undefined || input.rejectionToken !== undefined)) {
263
+ throw new ApprovalError("WSSPEC_APPROVAL_FEEDBACK_NOT_ALLOWED", "批准决定不能携带修改意见或拒绝确认凭据。");
264
+ }
265
+ if (input.terminal.isTTY === true && input.rejectionToken !== undefined) {
266
+ throw new ApprovalError("WSSPEC_APPROVAL_FEEDBACK_NOT_ALLOWED", "TTY 拒绝决定不能携带拒绝确认凭据。");
267
+ }
268
+ if (input.terminal.isTTY !== true && !(input.decision === "reject" && feedback !== undefined && input.rejectionToken !== undefined)) {
269
+ throw new ApprovalError("WSSPEC_INTERACTIVE_TTY_REQUIRED", "批准或无反馈拒绝必须来自真实交互式 TTY。");
270
+ }
271
+ const tokenHash = input.rejectionToken === undefined ? undefined : sha256(input.rejectionToken);
199
272
  const projection = await readControlPlane(input.cwd, input.workItemId);
200
273
  const request = projection.approvals[input.requestId];
201
274
  const worktree = await worktreeFor(input.cwd, input.workItemId);
@@ -203,27 +276,46 @@ export async function decideArtifactApproval(input) {
203
276
  return await mutateControlPlane({
204
277
  cwd: input.cwd, workItemId: input.workItemId, eventType: "approval.decided", idempotencyKey: `approval-decision:${input.requestId}`,
205
278
  ...(request === undefined ? {} : { stageId: request.stageId, attemptId: request.attemptId }),
206
- actor: input.actor ?? "interactive-user", operationInput: { requestId: input.requestId, decision: input.decision, reason: input.reason ?? null, expectedDigest: input.expectedDigest ?? null },
279
+ actor: input.actor ?? "interactive-user", operationInput: { requestId: input.requestId, decision: input.decision, feedback: feedback ?? null, tokenHash: tokenHash ?? null, expectedDigest: input.expectedDigest ?? null },
207
280
  mutate: async (current) => {
208
281
  const pending = assertPendingApproval(current, request, input.expectedDigest);
282
+ let evidence = current.evidence;
283
+ if (input.terminal.isTTY !== true) {
284
+ const key = rejectionConfirmationEvidenceKey(tokenHash);
285
+ const confirmation = current.evidence[key];
286
+ if (confirmation === undefined)
287
+ throw new ApprovalError("WSSPEC_REJECTION_CONFIRMATION_INVALID", "拒绝确认凭据不存在或无效。");
288
+ if (confirmation.consumedAt !== undefined)
289
+ throw new ApprovalError("WSSPEC_REJECTION_CONFIRMATION_USED", "拒绝确认凭据已经使用。");
290
+ if (confirmation.requestId !== input.requestId || confirmation.expectedDigest !== input.expectedDigest
291
+ || confirmation.actor !== (input.actor ?? "interactive-user") || confirmation.feedbackDigest !== approvalFeedbackDigest(feedback)) {
292
+ throw new ApprovalError("WSSPEC_REJECTION_CONFIRMATION_MISMATCH", "拒绝确认凭据与请求、actor 或修改意见不匹配。");
293
+ }
294
+ evidence = { ...current.evidence, [key]: { ...confirmation, consumedAt: new Date().toISOString() } };
295
+ }
209
296
  if (await computeWorkspaceTreeDigest(worktree) !== pending.workspaceTreeDigest) {
210
297
  throw new ApprovalError("WSSPEC_APPROVAL_EXPIRED", "审批绑定的工作区已经变化,请重新请求审批。");
211
298
  }
212
- await verifyApprovalArtifacts(worktree, input.workItemId, pending);
299
+ await verifyApprovalArtifacts(input.cwd, input.workItemId, pending);
213
300
  const status = input.decision === "approve" ? "approved" : "rejected";
214
301
  const decided = {
215
302
  ...pending,
216
303
  status,
217
304
  decidedBy: input.actor ?? "interactive-user",
218
305
  decidedAt: new Date().toISOString(),
306
+ ...(feedback === undefined ? {} : { feedback }),
219
307
  };
220
308
  const next = {
221
309
  ...current,
222
310
  workItem: transitionWorkItem(current.workItem, { type: "transition", to: "active" }),
223
311
  stages: { ...current.stages, [pending.stageId]: transitionStage(current.stages[pending.stageId], { type: "transition", to: input.decision === "approve" ? "succeeded" : "revision_required" }) },
224
312
  approvals: { ...current.approvals, [pending.requestId]: decided },
313
+ evidence: input.decision === "approve" ? evidence : {
314
+ ...evidence,
315
+ [approvalRevisionEvidenceKey(pending.stageId)]: pending.requestId,
316
+ },
225
317
  };
226
- return { projection: next, value: decided };
318
+ return input.finalize === undefined ? { projection: next, value: decided } : input.finalize(next, decided);
227
319
  },
228
320
  });
229
321
  }
@@ -1 +1 @@
1
- {"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/engine/approvals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"approvals.js","sourceRoot":"","sources":["../../src/engine/approvals.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ export interface CloseChecklistInput {
18
18
  }
19
19
  export interface WorktreeCloseChecklistInput extends CloseChecklistInput {
20
20
  worktree: string;
21
+ authorityRoot?: string;
21
22
  source: ApplicationSnapshot["source"];
22
23
  }
23
24
  export declare function closeChecklist(input: CloseChecklistInput): CloseDecision;
@@ -338,6 +338,7 @@ async function projectionWithVerifiedArtifacts(input) {
338
338
  sourceAuthority ??= authenticateApplicationSourceAuthority({
339
339
  controlPlane: input.projection.controlPlane,
340
340
  worktree: input.worktree,
341
+ ...(input.authorityRoot === undefined ? {} : { authorityRoot: input.authorityRoot }),
341
342
  workItemId: input.projection.workItemId,
342
343
  repositoryId: input.projection.repositoryId,
343
344
  }).then(({ sourceReference }) => sourceReference, () => undefined);
@@ -380,7 +381,7 @@ async function projectionWithVerifiedArtifacts(input) {
380
381
  || !sameValues(source, input.source) || !sameValues(source, authoritySource)) {
381
382
  throw new Error("Source Artifact reference mismatch");
382
383
  }
383
- await verifySourceArtifact(input.worktree, input.projection.workItemId, source);
384
+ await verifySourceArtifact(input.authorityRoot ?? input.worktree, input.projection.workItemId, source, input.authorityRoot === undefined ? undefined : `.wsspec/work-items/${input.projection.workItemId}`);
384
385
  verified.push(reference);
385
386
  }
386
387
  catch {
@@ -390,14 +391,18 @@ async function projectionWithVerifiedArtifacts(input) {
390
391
  continue;
391
392
  }
392
393
  try {
393
- const actual = await verifyArtifact(path.join(input.worktree, reference.path), {
394
- repositoryRoot: input.worktree,
394
+ const artifactRoot = input.authorityRoot ?? input.worktree;
395
+ const physicalPath = input.authorityRoot === undefined
396
+ ? reference.path
397
+ : reference.path.replace(`.wsspec/work-items/${input.projection.workItemId}/`, "");
398
+ const actual = await verifyArtifact(path.join(artifactRoot, physicalPath), {
399
+ repositoryRoot: artifactRoot,
395
400
  artifactType: reference.artifactType,
396
401
  workItemId: input.projection.workItemId,
397
402
  stageId: instance.stepInstanceId,
398
403
  attemptId: attempt.workPackage.attemptId,
399
404
  }, { allowUnregisteredType: true });
400
- if (!sameArtifactReference(actual, reference))
405
+ if (!sameArtifactReference({ ...actual, path: reference.path }, reference))
401
406
  throw new Error("Artifact reference mismatch");
402
407
  verified.push(reference);
403
408
  }
@@ -1 +1 @@
1
- {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/engine/archive.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"archive.js","sourceRoot":"","sources":["../../src/engine/archive.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,kBAAkB,MAAM,cAAc,CAAC;AACnD,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EACL,qBAAqB,EACrB,mBAAmB,EACnB,mBAAmB,EACnB,mBAAmB,EACnB,iBAAiB,GAElB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAGjJ,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAA0B,MAAM,wBAAwB,CAAC;AAClG,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,oBAAoB,EAAgC,MAAM,8CAA8C,CAAC;AAElH,OAAO,EAAE,sCAAsC,EAAgD,MAAM,6BAA6B,CAAC;AAEnI,MAAM,YAAY,GAAG,kBAAkB,CAAC,OAA4D,CAAC;AA6CrG,SAAS,MAAM,CAAC,KAAc;IAC5B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAgC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7H,CAAC;AAED,SAAS,QAAQ,CAAC,MAA0B;IAC1C,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,yBAAyB,IAAI,MAAM,KAAK,SAAS,CAAC;AAChG,CAAC;AAED,SAAS,OAAO,CAAC,KAA8B;IAC7C,OAAO,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACjE,CAAC;AAED,SAAS,aAAa,CAAC,KAAc;IACnC,OAAO,MAAM,CAAC,KAAK,CAA8B,CAAC;AACpD,CAAC;AAQD,SAAS,eAAe,CAAC,UAA6B,EAAE,cAAsB;IAC5E,OAAO,UAAU,CAAC,MAAM,CAAC,cAAc,CAAC,EAAE,MAAM,KAAK,SAAS;WACzD,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC;AAC5E,CAAC;AAED,SAAS,gBAAgB,CAAC,UAA6B,EAAE,MAAc,EAAE,MAAc;IACrF,OAAO,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;SACpC,MAAM,CAAC,CAAC,cAAc,EAAE,EAAE;QACzB,MAAM,MAAM,GAAG,uBAAuB,CAAC,cAAc,CAAC,CAAC;QACvD,OAAO,MAAM,EAAE,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC;IAC/D,CAAC,CAAC;SACD,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC;AACtD,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAwB,EAAE,UAA6B;IACrF,MAAM,MAAM,GAA4B,EAAE,CAAC;IAC3C,MAAM,KAAK,GAAG,CAAC,IAAkB,EAAE,cAAsB,EAAE,eAAwB,EAAQ,EAAE;QAC3F,MAAM,OAAO,GAAG,eAAe,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,eAAe,CAAC,UAAU,EAAE,cAAc,CAAC,CAAC;QAChG,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;YACnE,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,GAAG,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC;QACvF,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC/B,MAAM,WAAW,GAAG,gBAAgB,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;YACpE,KAAK,MAAM,eAAe,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;gBAClF,KAAK,CAAC,KAAK,EAAE,eAAe,EAAE,OAAO,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;IACH,CAAC,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK;QAAE,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;IAC9D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,kBAAkB,CAAC,QAA+B;IACzD,OAAO,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AACzG,CAAC;AAED,SAAS,aAAa,CACpB,SAAuD,EACvD,MAAsE;IAEtE,OAAO,OAAO,SAAS,CAAC,YAAY,KAAK,QAAQ;WAC5C,SAAS,CAAC,YAAY,KAAK,MAAM,CAAC,QAAQ;WAC1C,gBAAgB,CAAC;YAClB,YAAY,EAAE,SAAS,CAAC,YAAY;YACpC,GAAG,CAAC,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC;SAC9E,CAAC,KAAK,MAAM,CAAC,QAAQ,CAAC;AAC3B,CAAC;AAID,SAAS,gBAAgB,CAAC,KAA6E;IACrG,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ;WACrC,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC;WACpE,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,CAAC;WACxE,OAAO,KAAK,CAAC,aAAa,KAAK,QAAQ;WACvC,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;WAC9B,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;WAClC,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;WACrC,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,CAAC;QAAE,OAAO,SAAS,CAAC;IAC9F,OAAO;QACL,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC;QACrE,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC;QAC3E,aAAa,EAAE,KAAK,CAAC,aAAa;QAClC,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;KACzE,CAAC;AACJ,CAAC;AAED,SAAS,0BAA0B,CAAC,KAAuB;IACzD,IAAI,KAAK,CAAC,YAAY,KAAK,oBAAoB,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC;WACvE,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,IAAI,KAAK,CAAC,QAAQ,KAAK,CAAC;WAC5D,KAAK,CAAC,SAAS,KAAK,kBAAkB;QAAE,OAAO,SAAS,CAAC;IAC9D,OAAO;QACL,YAAY,EAAE,oBAAoB;QAClC,aAAa,EAAE,CAAC;QAChB,UAAU,EAAE,KAAK,CAAC,UAAU;QAC5B,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,QAAQ,EAAE,CAAC;QACX,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,kBAAkB;KAC9B,CAAC;AACJ,CAAC;AAED,SAAS,aAAa,CAAC,IAAiC,EAAE,KAAkC;IAC1F,OAAO,IAAI,CAAC,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;QACpE,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/B,OAAO,SAAS,KAAK,SAAS;eACzB,QAAQ,CAAC,YAAY,KAAK,SAAS,CAAC,YAAY;eAChD,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ;eACxC,QAAQ,CAAC,UAAU,KAAK,SAAS,CAAC,UAAU;eAC5C,QAAQ,CAAC,aAAa,KAAK,SAAS,CAAC,aAAa;eAClD,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,IAAI;eAChC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ;eACxC,QAAQ,CAAC,WAAW,KAAK,SAAS,CAAC,WAAW;eAC9C,QAAQ,CAAC,SAAS,KAAK,SAAS,CAAC,SAAS,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,SAAsC;IAC3D,OAAO,qBAAqB,CAAC,SAAS,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,eAAe,CAAC,QAAyB,EAAE,QAA+B;IACjF,IAAI,QAAQ,CAAC,MAAM,KAAK,UAAU,IAAI,QAAQ,CAAC,OAAO,KAAK,QAAQ,CAAC,cAAc;WAC7E,OAAO,QAAQ,CAAC,WAAW,KAAK,QAAQ,IAAI,QAAQ,CAAC,WAAW,KAAK,EAAE;WACvE,OAAO,QAAQ,CAAC,SAAS,KAAK,QAAQ,IAAI,QAAQ,CAAC,SAAS,KAAK,EAAE;QAAE,OAAO,KAAK,CAAC;IACvF,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,IAAI,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,WAAW,IAAI,OAAO,CAAC,WAAW,EAAE,SAAS,KAAK,QAAQ,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IACnH,MAAM,SAAS,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC1E,IAAI,QAAQ,CAAC,SAAS,KAAK,SAAS,IAAI,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,KAAK,SAAS,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3G,MAAM,iBAAiB,GAAG,aAAa,CAAC,SAA+B,CAAC,CAAC;IACzE,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,iBAAiB,CAAC;QAAE,OAAO,KAAK,CAAC;IACvF,OAAO,QAAQ,CAAC,WAAW,KAAK,qBAAqB,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,cAAc,EAAE,SAAS,EAAE,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,iBAAiB,EAAE,CAAC,CAAC;AAC3J,CAAC;AAED,SAAS,uBAAuB,CAAC,UAA6B,EAAE,QAA+B;IAC7F,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,EAAE,WAAW,EAAE,SAAS,CAAC;IAC3D,IAAI,SAAS,KAAK,SAAS,IAAI,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,WAAW;QAAE,OAAO,KAAK,CAAC;IAC9F,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU;WACzF,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,QAAQ,CAAC,cAAc;WACjD,MAAM,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS;WACtC,MAAM,CAAC,KAAK,CAAC,SAAS,KAAK,MAAM,CAAC,OAAO,CAAC,SAAS;WACnD,MAAM,CAAC,KAAK,CAAC,aAAa,KAAK,MAAM,CAAC,OAAO,CAAC,aAAa;WAC3D,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,EAAE;WACzB,MAAM,CAAC,OAAO,CAAC,SAAS,KAAK,MAAM,CAAC,OAAO,CAAC,SAAS;WACrD,MAAM,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC;AAC/C,CAAC;AAED,SAAS,iBAAiB,CAAC,UAA6B,EAAE,QAA+B;IACvF,OAAO,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;WAC7F,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,gBAAgB;eAChD,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,KAAK,aAAa,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,KAAK,YAAY,CAAC,CAAC;eACzF,uBAAuB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,eAAe,CAAC,OAAwB,EAAE,MAAyB;IAC1E,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAChH,IAAI,OAAO,CAAC,EAAE,KAAK,UAAU;QAAE,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,eAAe;YAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtF,IAAI,OAAO,CAAC,EAAE,KAAK,UAAU;QAAE,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,iBAAiB;YAAE,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACxF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,SAAS,CAAC,KAAmC,EAAE,MAAc;IACpE,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,QAAQ,IAAI,SAAS,CAAC;AACtE,CAAC;AAED,SAAS,gBAAgB,CAAC,KAA0B,EAAE,QAA+B,EAAE,MAAc;IACnG,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,WAAW;QAChE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,SAAS;QACzC,CAAC,CAAC,SAAS,CAAC;IACd,IAAI,SAAS,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IAC1C,OAAO,mBAAmB,CAAC;QACzB,QAAQ,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,qBAAqB,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;QAC3F,MAAM;QACN,SAAS;QACT,aAAa,EAAE,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,MAAM,CAAC;QAC7C,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;QAC9C,YAAY,EAAE,KAAK,CAAC,YAAY;KACjC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,2BAA2B,CAAC,KAA0B,EAAE,IAAkB;IACjF,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,KAAK,UAAU,IAAI,IAAI,CAAC,sBAAsB,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IACzF,IAAI,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,WAAW;QAAE,OAAO,KAAK,CAAC;IAC1E,MAAM,OAAO,GAAG,qBAAqB,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;IACpF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACvC,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,EAAE,EAAE;QAC5C,MAAM,MAAM,GAAG,oBAAoB,CAAC;YAClC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,MAAM,EAAE,IAAI,CAAC,EAAE;YACf,SAAS;SACV,CAAC,CAAC;QACH,OAAO,KAAK,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,wBAAwB,CAAC,KAA0B,EAAE,MAA6B;IACzF,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,oBAAoB,MAAM,EAAE,CAAC,CAAC;IACxE,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACxC,OAAO,sBAAsB,CAAC;QAC5B,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,oBAAoB,MAAM,EAAE,CAAC;QAChE,MAAM;QACN,OAAO;QACP,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,gBAAgB,KAAK,IAAI;KACrE,CAAC,CAAC;AACL,CAAC;AAED,SAAS,+BAA+B,CAAC,KAA0B;IACjE,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC5D,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACtC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACvG,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,MAAM,KAAK,cAAc,IAAI,MAAM,KAAK,aAAa,CAAC,CAAC;IAC9H,OAAO,UAAU,CAAC,MAAM,GAAG,CAAC;WACvB,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,SAAS,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,UAAU,CAAC,IAAa,EAAE,KAAc;IAC/C,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,YAAY,CAAC,KAAK,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,iBAAiB,CAAC,IAAqB,EAAE,KAAsB;IACtE,OAAO,UAAU,CAAC,qBAAqB,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,qBAAqB,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC;AAClH,CAAC;AAED,SAAS,gBAAgB,CAAC,KAA0B;IAClD,MAAM,GAAG,GAAG,oBAAoB,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC5G,OAAO,GAAG,EAAE,KAAK,KAAK,KAAK,IAAI,GAAG,CAAC,MAAM,KAAK,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AAC9F,CAAC;AAED,SAAS,eAAe,CAAC,KAAsB,EAAE,GAAoB;IACnE,OAAO,KAAK,CAAC,KAAK,KAAK,OAAO;WACzB,KAAK,CAAC,MAAM,KAAK,GAAG,CAAC,MAAM;WAC3B,KAAK,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS;WACjC,KAAK,CAAC,aAAa,KAAK,GAAG,CAAC,aAAa;WACzC,KAAK,CAAC,eAAe,KAAK,GAAG,CAAC,eAAe;WAC7C,KAAK,CAAC,gBAAgB,KAAK,GAAG,CAAC,gBAAgB;WAC/C,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC;WAC1C,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC;WAC1C,UAAU,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,CAAC,aAAa,CAAC;WAClD,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC;WAC7B,UAAU,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,cAAc,CAAC;WACpD,UAAU,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,cAAc,CAAC;WACpD,UAAU,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,gBAAgB,CAAC,KAA0B;IAClD,MAAM,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACpC,MAAM,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACjH,IAAI,GAAG,KAAK,SAAS,IAAI,KAAK,KAAK,SAAS;WACvC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,UAAU,CAAC,UAAU;WAC5C,KAAK,CAAC,aAAa,KAAK,GAAG,CAAC,UAAU;WACtC,KAAK,CAAC,SAAS,KAAK,GAAG,CAAC,SAAS;WACjC,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC;WAC3C,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,EAAE,GAAG,CAAC,aAAa,CAAC;WACnD,KAAK,CAAC,gBAAgB,KAAK,GAAG,CAAC,gBAAgB;WAC/C,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,EAAE,GAAG,CAAC,UAAU,CAAC;WAC7C,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,cAAc,CAAC;WACrD,CAAC,UAAU,CAAC,KAAK,CAAC,cAAc,EAAE,GAAG,CAAC,cAAc,CAAC;WACrD,CAAC,UAAU,CAAC,KAAK,CAAC,YAAY,EAAE,GAAG,CAAC,YAAY,CAAC;QAAE,OAAO,KAAK,CAAC;IACrE,MAAM,KAAK,GAAG,oBAAoB,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACvI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,KAAK,CAAC,eAAe,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,GAAG,CAAC;QAAE,OAAO,KAAK,CAAC;IACpH,IAAI,MAAM,GAAG,KAAK,CAAC;IACnB,IAAI,KAAK,CAAC,kBAAkB,KAAK,SAAS,EAAE,CAAC;QAC3C,MAAM,QAAQ,GAAG,oBAAoB,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,mBAAmB,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;QAC7I,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,UAAU,KAAK,KAAK,CAAC,kBAAkB,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,GAAG,CAAC;YAAE,OAAO,KAAK,CAAC;QAChI,MAAM,GAAG,QAAQ,CAAC;IACpB,CAAC;IACD,OAAO,MAAM,CAAC,eAAe,KAAK,KAAK,CAAC,mBAAmB,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAA0B;IACvD,MAAM,OAAO,GAA6B,EAAE,CAAC;IAC7C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,UAAU,GAAG,CAAC,QAAsD,EAAE,EAAU,EAAQ,EAAE;QAC9F,MAAM,GAAG,GAAG,GAAG,QAAQ,KAAK,EAAE,EAAE,CAAC;QACjC,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO;QACjC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACrB,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CAAC;IACjC,CAAC,CAAC;IACF,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,eAAe,CAAC,CAAC;IACpF,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;QAC5B,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC;YACxE,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,2BAA2B,CAAC,KAAK,EAAE,IAAI,CAAC;YAAE,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACvE,KAAK,MAAM,QAAQ,IAAI,sBAAsB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/E,MAAM,SAAS,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAC/C,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9E,IAAI,MAAM,CAAC,QAAQ,KAAK,cAAc,IAAI,gBAAgB,CAAC,KAAK,CAAC,KAAK,SAAS;gBAAE,SAAS;YAC1F,IAAI,MAAM,CAAC,QAAQ,KAAK,cAAc,IAAI,gBAAgB,CAAC,KAAK,CAAC;gBAAE,SAAS;YAC5E,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;gBACnE,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC1C,CAAC;QACH,CAAC;QACD,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,iBAAiB,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC7E,UAAU,CAAC,UAAU,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC3C,CAAC;QACD,KAAK,MAAM,MAAM,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC;YAC/E,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC;gBAAE,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IACD,KAAK,MAAM,MAAM,IAAI,CAAC,OAAO,EAAE,WAAW,CAAU,EAAE,CAAC;QACrD,MAAM,QAAQ,GAAG,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC;QAC1H,MAAM,aAAa,GAAG,MAAM,KAAK,OAAO,IAAI,+BAA+B,CAAC,KAAK,CAAC,CAAC;QACnF,IAAI,QAAQ,IAAI,CAAC,aAAa,IAAI,CAAC,wBAAwB,CAAC,KAAK,EAAE,MAAM,CAAC;YAAE,UAAU,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;IACrH,CAAC;IACD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAuD;QAClF,CAAC,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,kBAAkB,EAAE,CAAC,CAAC;KACxF,CAAC,CAAC;IACH,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAE,GAAG,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAE;WAC/F,IAAI,CAAC,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IACtC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;AACpD,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAyB,EAAE,QAA0B;IAClF,OAAO,MAAM,CAAC,YAAY,KAAK,QAAQ,CAAC,YAAY;WAC/C,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ;WACrC,MAAM,CAAC,aAAa,KAAK,QAAQ,CAAC,aAAa;WAC/C,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI;WAC7B,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC,QAAQ;WACrC,MAAM,CAAC,WAAW,KAAK,QAAQ,CAAC,WAAW;WAC3C,CAAC,QAAQ,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,KAAK,QAAQ,CAAC,SAAS,CAAC,CAAC;AACrF,CAAC;AAED,KAAK,UAAU,+BAA+B,CAAC,KAAkC;IAC/E,MAAM,QAAQ,GAAG,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;IAClD,IAAI,eAAyE,CAAC;IAC9E,MAAM,cAAc,GAAG,GAAiD,EAAE;QACxE,eAAe,KAAK,sCAAsC,CAAC;YACzD,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,YAAY;YAC3C,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,GAAG,CAAC,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,CAAC;YACpF,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,UAAU;YACvC,YAAY,EAAE,KAAK,CAAC,UAAU,CAAC,YAAY;SAC5C,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,eAAe,EAAE,EAAE,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QACnE,OAAO,eAAe,CAAC;IACzB,CAAC,CAAC;IACF,KAAK,MAAM,QAAQ,IAAI,sBAAsB,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QAC/E,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;QACjC,IAAI,OAAO,EAAE,MAAM,EAAE,MAAM,KAAK,WAAW,IAAI,OAAO,OAAO,CAAC,WAAW,EAAE,SAAS,KAAK,QAAQ;YAAE,SAAS;QAC5G,MAAM,eAAe,GAAG,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC;QACjF,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;QACnF,MAAM,aAAa,GAAG,iBAAiB,CAAC,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACpE,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,CAAC;QAClD,MAAM,QAAQ,GAAuB,EAAE,CAAC;QACxC,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAU,CAAC;QACnD,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;YAC/B,MAAM,SAAS,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC1C,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;gBAC5B,IAAI,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;oBAC3C,MAAM,QAAQ,GAAG,gBAAgB,CAAC;wBAChC,YAAY,EAAE,KAAK,CAAC,YAAY;wBAChC,GAAG,CAAC,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBAC5E,CAAC,CAAC;oBACH,IAAI,QAAQ,KAAK,SAAS,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;wBAAE,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACxG,CAAC;gBACD,SAAS;YACX,CAAC;YACD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;YAC7C,MAAM,QAAQ,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,aAAa,CAAC;YAC9F,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBACzB,SAAS;YACX,CAAC;YACD,IAAI,SAAS,CAAC,YAAY,KAAK,oBAAoB,EAAE,CAAC;gBACpD,MAAM,MAAM,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;gBACrD,IAAI,CAAC;oBACH,MAAM,eAAe,GAAG,MAAM,cAAc,EAAE,CAAC;oBAC/C,IAAI,MAAM,KAAK,SAAS,IAAI,eAAe,KAAK,SAAS;2BACpD,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,CAAC;wBAC/E,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;oBACxD,CAAC;oBACD,MAAM,oBAAoB,CACxB,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,QAAQ,EACrC,KAAK,CAAC,UAAU,CAAC,UAAU,EAC3B,MAAM,EACN,KAAK,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,sBAAsB,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,CACpG,CAAC;oBACF,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC3B,CAAC;gBAAC,MAAM,CAAC;oBACP,IAAI,QAAQ,KAAK,SAAS,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;wBAAE,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBACxG,CAAC;gBACD,SAAS;YACX,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,QAAQ,CAAC;gBAC3D,MAAM,YAAY,GAAG,KAAK,CAAC,aAAa,KAAK,SAAS;oBACpD,CAAC,CAAC,SAAS,CAAC,IAAI;oBAChB,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,sBAAsB,KAAK,CAAC,UAAU,CAAC,UAAU,GAAG,EAAE,EAAE,CAAC,CAAC;gBACrF,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,EAAE;oBACzE,cAAc,EAAE,YAAY;oBAC5B,YAAY,EAAE,SAAS,CAAC,YAAY;oBACpC,UAAU,EAAE,KAAK,CAAC,UAAU,CAAC,UAAU;oBACvC,OAAO,EAAE,QAAQ,CAAC,cAAc;oBAChC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS;iBACzC,EAAE,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC;gBACpC,IAAI,CAAC,qBAAqB,CAAC,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,CAAC;oBAAE,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;gBAC3H,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAC3B,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,QAAQ,KAAK,SAAS,IAAI,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC;oBAAE,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxG,CAAC;QACH,CAAC;QACD,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE;YAC7C,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;YAC7C,OAAO,QAAQ,KAAK,SAAS,IAAI,CAAC,wBAAwB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QACH,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG;YAClC,GAAG,OAAO;YACV,MAAM,EAAE,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE;SACnD,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,GAAG,KAAK,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,KAAkC;IAChF,IAAI,UAAU,GAAG,MAAM,+BAA+B,CAAC,KAAK,CAAC,CAAC;IAC9D,MAAM,GAAG,GAAG,gBAAgB,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;IACvD,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBACxC,gBAAgB,CAAC,KAAK,CAAC,QAAQ,EAAE,GAAG,CAAC,SAAS,EAAE,GAAG,CAAC,aAAa,CAAC;gBAClE,sBAAsB,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,cAAc,EAAE,GAAG,CAAC,cAAc,EAAE,YAAY,EAAE,GAAG,CAAC,YAAY,EAAE,CAAC;aACnJ,CAAC,CAAC;YACH,IAAI,KAAK,CAAC,MAAM,KAAK,GAAG,CAAC,eAAe,IAAI,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,gBAAgB;gBAAE,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAC5H,CAAC;QAAC,MAAM,CAAC;YACP,UAAU,GAAG;gBACX,GAAG,UAAU;gBACb,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC;qBAC7D,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC;aACxE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,OAAO,cAAc,CAAC,EAAE,GAAG,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;AAClD,CAAC"}
@@ -36,7 +36,7 @@ const defaultDocumentationPaths = Object.freeze([
36
36
  "docs/**/*.mdx",
37
37
  "docs/**/*.txt",
38
38
  ]);
39
- const workflowStepKeys = new Set(["id", "uses", "actorRole", "needs", "when", "retry", "loop", "approval", "inputs", "outputs", "skills", "action", "objective", "expectedOutcome", "until", "maxIterations", "steps"]);
39
+ const workflowStepKeys = new Set(["id", "uses", "workspace", "actorRole", "needs", "when", "retry", "loop", "approval", "inputs", "outputs", "skills", "action", "objective", "expectedOutcome", "until", "maxIterations", "steps"]);
40
40
  const profileStepKeys = new Set(["enabled", "approval", "artifactLevel", "artifacts", "gates", "maxIterations", "independentReviewActor"]);
41
41
  const resolvedSkillKeys = new Set(["requestedRef", "ref", "source", "provider", "rootId", "entrypoint", "digest", "candidates", "required", "usedFallback", "primary", "fallback"]);
42
42
  export class CompileError extends Error {
@@ -350,6 +350,7 @@ function compileStep(step, overlays, availableSkills, path) {
350
350
  const compiled = {
351
351
  id: step.id,
352
352
  uses: step.uses,
353
+ workspace: step.workspace,
353
354
  ...(step.actorRole === undefined ? {} : { actorRole: step.actorRole }),
354
355
  securityClass: executor.securityClass,
355
356
  needs: [...(step.needs ?? [])],