@agent-teams/docs-protocol-agent-teams 0.0.0 → 0.1.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 (195) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/README.md +27 -2
  3. package/assets/catalog.json +1 -1
  4. package/assets/history/sha256-8711dbd6109740857c69462d218071818317a62949f08ecf8abdc6d6b736321f/caller.yml +14 -0
  5. package/assets/history/sha256-f8da49344c3b0e9f31235de2826b1b9b392afb84515ace6af4fb5fe580e3a714/caller.yml +14 -0
  6. package/assets/transition-catalog.json +1 -1
  7. package/dist/composition/qualification-cli.d.ts.map +1 -1
  8. package/dist/composition/qualification-cli.js +19 -3
  9. package/dist/composition/qualification-cli.js.map +1 -1
  10. package/dist/consumer-integration/adapters/cohort-v2-authority-validator.d.ts +5 -0
  11. package/dist/consumer-integration/adapters/cohort-v2-authority-validator.d.ts.map +1 -0
  12. package/dist/consumer-integration/adapters/cohort-v2-authority-validator.js +361 -0
  13. package/dist/consumer-integration/adapters/cohort-v2-authority-validator.js.map +1 -0
  14. package/dist/consumer-integration/adapters/consumer-integration-schema-validator.d.ts +1 -0
  15. package/dist/consumer-integration/adapters/consumer-integration-schema-validator.d.ts.map +1 -1
  16. package/dist/consumer-integration/adapters/consumer-integration-schema-validator.js +22 -4
  17. package/dist/consumer-integration/adapters/consumer-integration-schema-validator.js.map +1 -1
  18. package/dist/consumer-integration/adapters/consumer-upgrade-file-projectors.d.ts +40 -1
  19. package/dist/consumer-integration/adapters/consumer-upgrade-file-projectors.d.ts.map +1 -1
  20. package/dist/consumer-integration/adapters/consumer-upgrade-file-projectors.js +227 -0
  21. package/dist/consumer-integration/adapters/consumer-upgrade-file-projectors.js.map +1 -1
  22. package/dist/consumer-integration/adapters/github-cohort-authority-reader.d.ts +17 -5
  23. package/dist/consumer-integration/adapters/github-cohort-authority-reader.d.ts.map +1 -1
  24. package/dist/consumer-integration/adapters/github-cohort-authority-reader.js +123 -16
  25. package/dist/consumer-integration/adapters/github-cohort-authority-reader.js.map +1 -1
  26. package/dist/consumer-integration/adapters/node-consumer-integration-repository.d.ts +2 -1
  27. package/dist/consumer-integration/adapters/node-consumer-integration-repository.d.ts.map +1 -1
  28. package/dist/consumer-integration/adapters/node-consumer-integration-repository.js +55 -16
  29. package/dist/consumer-integration/adapters/node-consumer-integration-repository.js.map +1 -1
  30. package/dist/consumer-integration/adapters/node-consumer-restoration-evidence.d.ts +38 -0
  31. package/dist/consumer-integration/adapters/node-consumer-restoration-evidence.d.ts.map +1 -0
  32. package/dist/consumer-integration/adapters/node-consumer-restoration-evidence.js +177 -0
  33. package/dist/consumer-integration/adapters/node-consumer-restoration-evidence.js.map +1 -0
  34. package/dist/consumer-integration/adapters/node-consumer-restoration-finalization.d.ts +10 -0
  35. package/dist/consumer-integration/adapters/node-consumer-restoration-finalization.d.ts.map +1 -0
  36. package/dist/consumer-integration/adapters/node-consumer-restoration-finalization.js +95 -0
  37. package/dist/consumer-integration/adapters/node-consumer-restoration-finalization.js.map +1 -0
  38. package/dist/consumer-integration/adapters/node-consumer-restoration-lock.d.ts +3 -0
  39. package/dist/consumer-integration/adapters/node-consumer-restoration-lock.d.ts.map +1 -0
  40. package/dist/consumer-integration/adapters/node-consumer-restoration-lock.js +104 -0
  41. package/dist/consumer-integration/adapters/node-consumer-restoration-lock.js.map +1 -0
  42. package/dist/consumer-integration/adapters/node-consumer-restoration-scope.d.ts +9 -0
  43. package/dist/consumer-integration/adapters/node-consumer-restoration-scope.d.ts.map +1 -0
  44. package/dist/consumer-integration/adapters/node-consumer-restoration-scope.js +71 -0
  45. package/dist/consumer-integration/adapters/node-consumer-restoration-scope.js.map +1 -0
  46. package/dist/consumer-integration/adapters/node-consumer-restoration-selection.d.ts +9 -0
  47. package/dist/consumer-integration/adapters/node-consumer-restoration-selection.d.ts.map +1 -0
  48. package/dist/consumer-integration/adapters/node-consumer-restoration-selection.js +35 -0
  49. package/dist/consumer-integration/adapters/node-consumer-restoration-selection.js.map +1 -0
  50. package/dist/consumer-integration/adapters/node-consumer-restoration.d.ts +12 -0
  51. package/dist/consumer-integration/adapters/node-consumer-restoration.d.ts.map +1 -0
  52. package/dist/consumer-integration/adapters/node-consumer-restoration.js +102 -0
  53. package/dist/consumer-integration/adapters/node-consumer-restoration.js.map +1 -0
  54. package/dist/consumer-integration/adapters/node-consumer-upgrade-sandbox.d.ts +33 -5
  55. package/dist/consumer-integration/adapters/node-consumer-upgrade-sandbox.d.ts.map +1 -1
  56. package/dist/consumer-integration/adapters/node-consumer-upgrade-sandbox.js +111 -106
  57. package/dist/consumer-integration/adapters/node-consumer-upgrade-sandbox.js.map +1 -1
  58. package/dist/consumer-integration/adapters/node-consumer-upgrade-source-proof.d.ts +20 -0
  59. package/dist/consumer-integration/adapters/node-consumer-upgrade-source-proof.d.ts.map +1 -0
  60. package/dist/consumer-integration/adapters/node-consumer-upgrade-source-proof.js +89 -0
  61. package/dist/consumer-integration/adapters/node-consumer-upgrade-source-proof.js.map +1 -0
  62. package/dist/consumer-integration/adapters/node-consumer-upgrade-target.d.ts +11 -0
  63. package/dist/consumer-integration/adapters/node-consumer-upgrade-target.d.ts.map +1 -0
  64. package/dist/consumer-integration/adapters/node-consumer-upgrade-target.js +60 -0
  65. package/dist/consumer-integration/adapters/node-consumer-upgrade-target.js.map +1 -0
  66. package/dist/consumer-integration/adapters/pnpm-lockfile-policy-v1.d.ts +1 -1
  67. package/dist/consumer-integration/adapters/pnpm-lockfile-policy-v1.d.ts.map +1 -1
  68. package/dist/consumer-integration/adapters/pnpm-lockfile-policy-v1.js +2 -3
  69. package/dist/consumer-integration/adapters/pnpm-lockfile-policy-v1.js.map +1 -1
  70. package/dist/consumer-integration/adapters/pnpm-lockfile-validator-v1.d.ts +19 -0
  71. package/dist/consumer-integration/adapters/pnpm-lockfile-validator-v1.d.ts.map +1 -1
  72. package/dist/consumer-integration/adapters/pnpm-lockfile-validator-v1.js +184 -44
  73. package/dist/consumer-integration/adapters/pnpm-lockfile-validator-v1.js.map +1 -1
  74. package/dist/consumer-integration/adapters/pnpm-lockfile-validator-v2.d.ts +4 -0
  75. package/dist/consumer-integration/adapters/pnpm-lockfile-validator-v2.d.ts.map +1 -0
  76. package/dist/consumer-integration/adapters/pnpm-lockfile-validator-v2.js +64 -0
  77. package/dist/consumer-integration/adapters/pnpm-lockfile-validator-v2.js.map +1 -0
  78. package/dist/consumer-integration/adapters/pnpm-manifest-adapter-v1.d.ts +19 -2
  79. package/dist/consumer-integration/adapters/pnpm-manifest-adapter-v1.d.ts.map +1 -1
  80. package/dist/consumer-integration/adapters/pnpm-manifest-adapter-v1.js +65 -18
  81. package/dist/consumer-integration/adapters/pnpm-manifest-adapter-v1.js.map +1 -1
  82. package/dist/consumer-integration/adapters/pnpm-manifest-adapter-v2.d.ts +13 -0
  83. package/dist/consumer-integration/adapters/pnpm-manifest-adapter-v2.d.ts.map +1 -0
  84. package/dist/consumer-integration/adapters/pnpm-manifest-adapter-v2.js +37 -0
  85. package/dist/consumer-integration/adapters/pnpm-manifest-adapter-v2.js.map +1 -0
  86. package/dist/consumer-integration/adapters/pnpm-runtime-closure-v1.d.ts +7 -0
  87. package/dist/consumer-integration/adapters/pnpm-runtime-closure-v1.d.ts.map +1 -1
  88. package/dist/consumer-integration/adapters/pnpm-runtime-closure-v1.js +12 -3
  89. package/dist/consumer-integration/adapters/pnpm-runtime-closure-v1.js.map +1 -1
  90. package/dist/consumer-integration/adapters/pnpm-runtime-closure-v2.d.ts +3 -0
  91. package/dist/consumer-integration/adapters/pnpm-runtime-closure-v2.d.ts.map +1 -0
  92. package/dist/consumer-integration/adapters/pnpm-runtime-closure-v2.js +11 -0
  93. package/dist/consumer-integration/adapters/pnpm-runtime-closure-v2.js.map +1 -0
  94. package/dist/consumer-integration/application/model/consumer-restoration.d.ts +76 -0
  95. package/dist/consumer-integration/application/model/consumer-restoration.d.ts.map +1 -0
  96. package/dist/consumer-integration/application/model/consumer-restoration.js +2 -0
  97. package/dist/consumer-integration/application/model/consumer-restoration.js.map +1 -0
  98. package/dist/consumer-integration/application/policies/consumer-integration-assets.d.ts +19 -3
  99. package/dist/consumer-integration/application/policies/consumer-integration-assets.d.ts.map +1 -1
  100. package/dist/consumer-integration/application/policies/consumer-integration-assets.js +38 -4
  101. package/dist/consumer-integration/application/policies/consumer-integration-assets.js.map +1 -1
  102. package/dist/consumer-integration/application/policies/consumer-integration-desired-state.d.ts +3 -1
  103. package/dist/consumer-integration/application/policies/consumer-integration-desired-state.d.ts.map +1 -1
  104. package/dist/consumer-integration/application/policies/consumer-integration-desired-state.js +87 -0
  105. package/dist/consumer-integration/application/policies/consumer-integration-desired-state.js.map +1 -1
  106. package/dist/consumer-integration/application/policies/consumer-restoration-proof.d.ts +12 -0
  107. package/dist/consumer-integration/application/policies/consumer-restoration-proof.d.ts.map +1 -0
  108. package/dist/consumer-integration/application/policies/consumer-restoration-proof.js +123 -0
  109. package/dist/consumer-integration/application/policies/consumer-restoration-proof.js.map +1 -0
  110. package/dist/consumer-integration/application/policies/qualified-docs-cohort-v2.d.ts +13 -0
  111. package/dist/consumer-integration/application/policies/qualified-docs-cohort-v2.d.ts.map +1 -0
  112. package/dist/consumer-integration/application/policies/qualified-docs-cohort-v2.js +38 -0
  113. package/dist/consumer-integration/application/policies/qualified-docs-cohort-v2.js.map +1 -0
  114. package/dist/consumer-integration/application/ports/consumer-integration-lifecycle.d.ts +3 -2
  115. package/dist/consumer-integration/application/ports/consumer-integration-lifecycle.d.ts.map +1 -1
  116. package/dist/consumer-integration/application/ports/consumer-integration-planners.d.ts +4 -4
  117. package/dist/consumer-integration/application/ports/consumer-integration-planners.d.ts.map +1 -1
  118. package/dist/consumer-integration/application/ports/consumer-restoration.d.ts +24 -0
  119. package/dist/consumer-integration/application/ports/consumer-restoration.d.ts.map +1 -0
  120. package/dist/consumer-integration/application/ports/consumer-restoration.js +2 -0
  121. package/dist/consumer-integration/application/ports/consumer-restoration.js.map +1 -0
  122. package/dist/consumer-integration/application/ports/consumer-upgrade.d.ts +44 -6
  123. package/dist/consumer-integration/application/ports/consumer-upgrade.d.ts.map +1 -1
  124. package/dist/consumer-integration/application/use-cases/compile-consumer-integration-v3.d.ts +39 -0
  125. package/dist/consumer-integration/application/use-cases/compile-consumer-integration-v3.d.ts.map +1 -0
  126. package/dist/consumer-integration/application/use-cases/compile-consumer-integration-v3.js +284 -0
  127. package/dist/consumer-integration/application/use-cases/compile-consumer-integration-v3.js.map +1 -0
  128. package/dist/consumer-integration/application/use-cases/plan-consumer-integration.d.ts +2 -2
  129. package/dist/consumer-integration/application/use-cases/plan-consumer-integration.d.ts.map +1 -1
  130. package/dist/consumer-integration/application/use-cases/plan-consumer-integration.js +23 -153
  131. package/dist/consumer-integration/application/use-cases/plan-consumer-integration.js.map +1 -1
  132. package/dist/consumer-integration/application/use-cases/run-consumer-integration.d.ts.map +1 -1
  133. package/dist/consumer-integration/application/use-cases/run-consumer-integration.js +10 -6
  134. package/dist/consumer-integration/application/use-cases/run-consumer-integration.js.map +1 -1
  135. package/dist/consumer-integration/application/use-cases/upgrade-consumer-integration.d.ts +11 -3
  136. package/dist/consumer-integration/application/use-cases/upgrade-consumer-integration.d.ts.map +1 -1
  137. package/dist/consumer-integration/application/use-cases/upgrade-consumer-integration.js +188 -39
  138. package/dist/consumer-integration/application/use-cases/upgrade-consumer-integration.js.map +1 -1
  139. package/dist/consumer-integration/composition/consumer-integration-cli.d.ts.map +1 -1
  140. package/dist/consumer-integration/composition/consumer-integration-cli.js +85 -15
  141. package/dist/consumer-integration/composition/consumer-integration-cli.js.map +1 -1
  142. package/dist/consumer-integration/composition/consumer-integration-planner.d.ts +6 -2
  143. package/dist/consumer-integration/composition/consumer-integration-planner.d.ts.map +1 -1
  144. package/dist/consumer-integration/composition/consumer-integration-planner.js +40 -3
  145. package/dist/consumer-integration/composition/consumer-integration-planner.js.map +1 -1
  146. package/dist/consumer-integration/composition/node-consumer-integration.d.ts +12 -0
  147. package/dist/consumer-integration/composition/node-consumer-integration.d.ts.map +1 -1
  148. package/dist/consumer-integration/composition/node-consumer-integration.js +17 -1
  149. package/dist/consumer-integration/composition/node-consumer-integration.js.map +1 -1
  150. package/dist/consumer-integration/composition/qualification-v3-boundary.d.ts +20 -0
  151. package/dist/consumer-integration/composition/qualification-v3-boundary.d.ts.map +1 -0
  152. package/dist/consumer-integration/composition/qualification-v3-boundary.js +29 -0
  153. package/dist/consumer-integration/composition/qualification-v3-boundary.js.map +1 -0
  154. package/dist/consumer-integration/domain/model.d.ts +61 -0
  155. package/dist/consumer-integration/domain/model.d.ts.map +1 -1
  156. package/dist/consumer-integration/generated/canonical-assets.d.ts +3 -2
  157. package/dist/consumer-integration/generated/canonical-assets.d.ts.map +1 -1
  158. package/dist/consumer-integration/generated/canonical-assets.js +3 -2
  159. package/dist/consumer-integration/generated/canonical-assets.js.map +1 -1
  160. package/dist/consumer-integration/index.d.ts +3 -1
  161. package/dist/consumer-integration/index.d.ts.map +1 -1
  162. package/dist/consumer-integration/index.js +1 -0
  163. package/dist/consumer-integration/index.js.map +1 -1
  164. package/dist/index.d.ts +2 -1
  165. package/dist/index.d.ts.map +1 -1
  166. package/dist/index.js +1 -1
  167. package/dist/index.js.map +1 -1
  168. package/dist/qualification/index.d.ts +6 -0
  169. package/dist/qualification/index.d.ts.map +1 -1
  170. package/dist/qualification/index.js +3 -0
  171. package/dist/qualification/index.js.map +1 -1
  172. package/dist/qualification/qualification-v3-authority.d.ts +14 -0
  173. package/dist/qualification/qualification-v3-authority.d.ts.map +1 -0
  174. package/dist/qualification/qualification-v3-authority.js +5 -0
  175. package/dist/qualification/qualification-v3-authority.js.map +1 -0
  176. package/dist/qualification/qualification-v3-observer.d.ts +7 -0
  177. package/dist/qualification/qualification-v3-observer.d.ts.map +1 -0
  178. package/dist/qualification/qualification-v3-observer.js +22 -0
  179. package/dist/qualification/qualification-v3-observer.js.map +1 -0
  180. package/dist/qualification/qualification-v3-runner.d.ts +7 -0
  181. package/dist/qualification/qualification-v3-runner.d.ts.map +1 -0
  182. package/dist/qualification/qualification-v3-runner.js +95 -0
  183. package/dist/qualification/qualification-v3-runner.js.map +1 -0
  184. package/dist/qualification/v3-contract.d.ts +58 -0
  185. package/dist/qualification/v3-contract.d.ts.map +1 -0
  186. package/dist/qualification/v3-contract.js +2 -0
  187. package/dist/qualification/v3-contract.js.map +1 -0
  188. package/package.json +3 -3
  189. package/schemas/docs-consumer-integration-profile/v3.schema.json +68 -0
  190. package/schemas/docs-consumer-managed-state/v2.schema.json +120 -0
  191. package/schemas/docs-consumer-restoration-execution/v1.schema.json +124 -0
  192. package/schemas/docs-consumer-upgrade-execution/v1.schema.json +39 -3
  193. package/schemas/docs-protocol-qualification-receipt/v3.schema.json +118 -0
  194. package/schemas/qualified-docs-cohort/v2.schema.json +149 -0
  195. package/skills/docs/SKILL.md +8 -6
@@ -1,21 +1,26 @@
1
1
  import { createHash } from "node:crypto";
2
2
  import { execFile } from "node:child_process";
3
- import { lstat, mkdir, mkdtemp, readdir, realpath, readlink, rm, writeFile } from "node:fs/promises";
3
+ import { mkdir, mkdtemp, readdir, realpath, readlink, rm, writeFile } from "node:fs/promises";
4
4
  import { tmpdir } from "node:os";
5
5
  import { dirname, isAbsolute, join, relative, resolve as resolvePath, sep } from "node:path";
6
- import { projectConsumerIntegrationProfileV1, projectPnpmWorkspaceCohortExclusionsV1, projectPnpmWorkspaceMigrationExclusionsV1 } from "./consumer-upgrade-file-projectors.js";
6
+ import { projectConsumerUpgradeFiles } from "./consumer-upgrade-file-projectors.js";
7
7
  import { ConsumerIntegrationNodeError } from "./consumer-integration-node-error.js";
8
8
  import { INTEGRATION_PROFILE_PATH, MAXIMUM_LOCKFILE_BYTES, MAXIMUM_MANAGED_ASSET_BYTES, MAXIMUM_MANIFEST_BYTES, MAXIMUM_PROFILE_BYTES, MAXIMUM_WORKSPACE_BYTES, readStableConsumerFile } from "./node-consumer-repository-files.js";
9
- import { projectPnpmManifestCohortPinsV1 } from "./pnpm-manifest-adapter-v1.js";
9
+ import { applyTargetIntegration, assertInstalledHistoricalIntegrationCurrent, assertInstalledIntegrationCurrent } from "./node-consumer-upgrade-target.js";
10
+ import { allowedUpgradePaths, assertCleanConsumerGitSource, assertManagedAssetsCreatedV2, assertProvedSourceSnapshot, resetProvedManagedAssetsV2 } from "./node-consumer-upgrade-source-proof.js";
11
+ function isAuthorityV1(value) {
12
+ return value.cohort.schemaVersion === 1;
13
+ }
10
14
  const WORKSPACE_PATH = "pnpm-workspace.yaml";
11
15
  const MAXIMUM_PROCESS_OUTPUT_BYTES = 4 * 1024 * 1024;
12
16
  const MAXIMUM_INVENTORY_FILES = 100_000;
13
17
  const MAXIMUM_INVENTORY_BYTES = 1024 * 1024 * 1024;
14
18
  const MAXIMUM_INVENTORY_FILE_BYTES = 64 * 1024 * 1024;
15
- function execute(executable, args, cwd, allowedExitCodes = [0]) {
19
+ function execute(executable, args, cwd, allowedExitCodes = [0], environment) {
16
20
  return new Promise((resolve, reject) => {
17
21
  execFile(executable, [...args], {
18
22
  cwd,
23
+ ...(environment === undefined ? {} : { env: environment }),
19
24
  encoding: "utf8",
20
25
  maxBuffer: MAXIMUM_PROCESS_OUTPUT_BYTES,
21
26
  signal: AbortSignal.timeout(10 * 60 * 1000),
@@ -31,17 +36,7 @@ function execute(executable, args, cwd, allowedExitCodes = [0]) {
31
36
  });
32
37
  });
33
38
  }
34
- async function assertCleanGitRoot(root) {
35
- const status = await execute("git", ["status", "--porcelain=v1", "--untracked-files=all"], root);
36
- if (status.stdout !== "") {
37
- throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_DIRTY_WORKTREE", "One-command Cohort upgrade requires a clean consumer Git worktree.");
38
- }
39
- const head = (await execute("git", ["rev-parse", "HEAD"], root)).stdout.trim();
40
- if (!/^(?!0{40}$)[0-9a-f]{40}$/u.test(head)) {
41
- throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_GIT_INVALID", "Consumer worktree must have one exact Git HEAD.");
42
- }
43
- return head;
44
- }
39
+ const assertCleanGitRoot = (root) => assertCleanConsumerGitSource(root, execute);
45
40
  function contained(root, repositoryPath) {
46
41
  const path = resolvePath(root, repositoryPath);
47
42
  const relation = relative(root, path);
@@ -56,54 +51,8 @@ async function writeProjectedFile(root, path, bytes) {
56
51
  await writeFile(target, bytes);
57
52
  }
58
53
  async function runPnpm(root, args) {
59
- await execute("corepack", ["pnpm", ...args], root);
60
- }
61
- function parseConsumerExecution(result) {
62
- let parsed;
63
- try {
64
- parsed = JSON.parse(result.stdout);
65
- }
66
- catch {
67
- throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_INVALID", "Target Docs Protocol CLI did not return one JSON execution envelope.");
68
- }
69
- if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
70
- throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_INVALID", "Target Docs Protocol CLI returned an invalid execution envelope.");
71
- }
72
- return parsed;
73
- }
74
- async function invokeInstalledDocs(root, args) {
75
- const cli = join(root, "node_modules", "@agent-teams", "docs-protocol-agent-teams", "dist", "cli.js");
76
- const metadata = await lstat(cli);
77
- if (!metadata.isFile() || metadata.isSymbolicLink() || metadata.nlink > 1) {
78
- throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_INVALID", "Installed target Docs Protocol CLI is not one regular package file.");
79
- }
80
- const result = await execute(process.execPath, [cli, ...args, "--consumer", root, "--json"], root, [0, 1]);
81
- return parseConsumerExecution(result);
82
- }
83
- async function applyTargetIntegration(root, cohortId) {
84
- const plan = await invokeInstalledDocs(root, ["plan", "--to", cohortId]);
85
- if (plan["outcome"] === "change-required") {
86
- const planValue = plan["plan"];
87
- const digest = typeof planValue === "object" && planValue !== null &&
88
- !Array.isArray(planValue) ? planValue["planDigest"] : undefined;
89
- if (typeof digest !== "string") {
90
- throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_INVALID", "Target Docs Protocol Plan did not expose one exact digest.");
91
- }
92
- const applied = await invokeInstalledDocs(root, ["apply", "--expect", digest]);
93
- if (!["applied", "current"].includes(applied["outcome"])) {
94
- throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_BLOCKED", "Target Docs Protocol apply did not converge in the disposable repository.");
95
- }
96
- }
97
- else if (plan["outcome"] !== "current") {
98
- throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_BLOCKED", "Target Docs Protocol rejected the projected Cohort in the disposable repository.");
99
- }
100
- await assertInstalledIntegrationCurrent(root);
101
- }
102
- async function assertInstalledIntegrationCurrent(root) {
103
- const checked = await invokeInstalledDocs(root, ["check"]);
104
- if (checked["outcome"] !== "current") {
105
- throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_BLOCKED", "Target Docs Protocol check did not converge in the disposable repository.");
106
- }
54
+ await execute("corepack", ["pnpm", ...args], root, [0], args.includes("--offline")
55
+ ? { ...process.env, COREPACK_ENABLE_NETWORK: "0" } : undefined);
107
56
  }
108
57
  function ignoredInventoryPath(prefix, name) {
109
58
  return name === "node_modules" ||
@@ -178,21 +127,9 @@ function maximumBytes(path) {
178
127
  }
179
128
  return MAXIMUM_MANAGED_ASSET_BYTES;
180
129
  }
181
- function allowedUpgradePaths(current) {
182
- return new Set([
183
- "AGENTS.md",
184
- INTEGRATION_PROFILE_PATH,
185
- "package.json",
186
- "pnpm-lock.yaml",
187
- WORKSPACE_PATH,
188
- current.skillPath,
189
- current.callerWorkflowPath,
190
- current.managedStatePath
191
- ]);
192
- }
193
130
  async function operationForChangedPath(input) {
194
131
  const [preimage, postimage] = await Promise.all([
195
- readStableConsumerFile(input.consumerRoot, input.path, maximumBytes(input.path), true),
132
+ readStableConsumerFile(input.sourceRoot, input.path, maximumBytes(input.path), true),
196
133
  readStableConsumerFile(input.stagedRoot, input.path, maximumBytes(input.path), true)
197
134
  ]);
198
135
  if (preimage.state !== "file" || postimage.state !== "file") {
@@ -225,8 +162,11 @@ async function installCohort(root, offline) {
225
162
  ]);
226
163
  }
227
164
  export class NodeConsumerUpgradeSandbox {
228
- async prepare(options) {
165
+ async prepareGeneration(options) {
229
166
  const head = await assertCleanGitRoot(options.consumerRoot);
167
+ if (head !== options.expectedSourceRevision) {
168
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_SOURCE_CHANGED", "Consumer Git HEAD changed after the source Cohort was proved current.");
169
+ }
230
170
  const temporary = await realpath(await mkdtemp(join(tmpdir(), "docs-consumer-upgrade-")));
231
171
  const beforeRoot = join(temporary, "before");
232
172
  const stagedRoot = join(temporary, "staged");
@@ -235,6 +175,11 @@ export class NodeConsumerUpgradeSandbox {
235
175
  extractHead(options.consumerRoot, head, beforeRoot),
236
176
  extractHead(options.consumerRoot, head, stagedRoot)
237
177
  ]);
178
+ await assertProvedSourceSnapshot({
179
+ current: options.current,
180
+ expected: options.expectedSourceSnapshot,
181
+ sourceRoot: beforeRoot
182
+ });
238
183
  await execute("git", ["init", "-q"], stagedRoot);
239
184
  const [profile, manifest] = await Promise.all([
240
185
  readStableConsumerFile(stagedRoot, INTEGRATION_PROFILE_PATH, MAXIMUM_PROFILE_BYTES, true),
@@ -243,34 +188,64 @@ export class NodeConsumerUpgradeSandbox {
243
188
  if (profile.state !== "file" || manifest.state !== "file") {
244
189
  throw new Error("unreachable");
245
190
  }
246
- await Promise.all([
247
- writeProjectedFile(stagedRoot, INTEGRATION_PROFILE_PATH, await projectConsumerIntegrationProfileV1({
248
- bytes: profile.bytes,
249
- cohort: options.authority.cohort
250
- })),
251
- writeProjectedFile(stagedRoot, "package.json", projectPnpmManifestCohortPinsV1({
252
- bytes: manifest.bytes,
253
- cohort: options.authority.cohort
254
- }))
255
- ]);
256
191
  const workspace = await readStableConsumerFile(stagedRoot, WORKSPACE_PATH, MAXIMUM_WORKSPACE_BYTES, false);
257
- let targetWorkspace;
258
- if (workspace.state === "file") {
259
- targetWorkspace = projectPnpmWorkspaceCohortExclusionsV1({
260
- bytes: workspace.bytes,
261
- cohort: options.authority.cohort
192
+ const fileInput = {
193
+ profile: profile.bytes,
194
+ manifest: manifest.bytes,
195
+ ...(workspace.state === "file" ? { workspace: workspace.bytes } : {})
196
+ };
197
+ let projected;
198
+ if (options.current.schemaVersion === 1 && isAuthorityV1(options.authority)) {
199
+ projected = await projectConsumerUpgradeFiles({
200
+ ...fileInput,
201
+ authority: options.authority,
202
+ current: options.current
262
203
  });
263
- await writeProjectedFile(stagedRoot, WORKSPACE_PATH, projectPnpmWorkspaceMigrationExclusionsV1({
264
- bytes: workspace.bytes,
265
- source: options.current.cohort,
266
- target: options.authority.cohort
267
- }));
268
204
  }
205
+ else if (!isAuthorityV1(options.authority)) {
206
+ projected = options.current.schemaVersion === 1
207
+ ? await projectConsumerUpgradeFiles({
208
+ ...fileInput, authority: options.authority, current: options.current
209
+ })
210
+ : await projectConsumerUpgradeFiles({
211
+ ...fileInput, authority: options.authority, current: options.current
212
+ });
213
+ }
214
+ else {
215
+ throw new Error("unreachable");
216
+ }
217
+ await Promise.all([
218
+ writeProjectedFile(stagedRoot, INTEGRATION_PROFILE_PATH, projected.profile),
219
+ writeProjectedFile(stagedRoot, "package.json", projected.manifest),
220
+ ...(projected.migrationWorkspace === undefined ? [] : [
221
+ writeProjectedFile(stagedRoot, WORKSPACE_PATH, projected.migrationWorkspace)
222
+ ])
223
+ ]);
269
224
  await installCohort(stagedRoot, false);
270
- if (targetWorkspace !== undefined) {
271
- await writeProjectedFile(stagedRoot, WORKSPACE_PATH, targetWorkspace);
225
+ if (projected.targetWorkspace !== undefined) {
226
+ await writeProjectedFile(stagedRoot, WORKSPACE_PATH, projected.targetWorkspace);
227
+ }
228
+ if (options.current.schemaVersion === 3) {
229
+ if (options.managedPreimages === undefined) {
230
+ throw new Error("unreachable");
231
+ }
232
+ await resetProvedManagedAssetsV2({
233
+ current: options.current,
234
+ managedPreimages: options.managedPreimages,
235
+ stagedRoot
236
+ });
237
+ }
238
+ else if (!isAuthorityV1(options.authority)) {
239
+ await Promise.all([
240
+ options.current.callerWorkflowPath,
241
+ options.current.managedStatePath,
242
+ options.current.skillPath
243
+ ].map((path) => rm(contained(stagedRoot, path))));
244
+ }
245
+ await applyTargetIntegration(stagedRoot, options.authority.cohort.cohortId, execute);
246
+ if (!isAuthorityV1(options.authority)) {
247
+ await assertManagedAssetsCreatedV2(stagedRoot, options.current);
272
248
  }
273
- await applyTargetIntegration(stagedRoot, options.authority.cohort.cohortId);
274
249
  const changed = changedInventoryPaths(await repositoryInventory(beforeRoot), await repositoryInventory(stagedRoot));
275
250
  const allowed = allowedUpgradePaths(options.current);
276
251
  const unexpected = changed.filter((path) => !allowed.has(path));
@@ -282,10 +257,12 @@ export class NodeConsumerUpgradeSandbox {
282
257
  .state === "absent") {
283
258
  throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_SCOPE_VIOLATION", "Cohort upgrade cannot introduce a previously absent pnpm workspace authority.");
284
259
  }
285
- await assertCleanGitRoot(options.consumerRoot);
260
+ if (await assertCleanGitRoot(options.consumerRoot) !== head) {
261
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_SOURCE_CHANGED", "Consumer Git HEAD changed while the successor was staged.");
262
+ }
286
263
  const operations = await Promise.all(changed.map((path) => operationForChangedPath({
287
- consumerRoot: options.consumerRoot,
288
264
  path,
265
+ sourceRoot: beforeRoot,
289
266
  stagedRoot
290
267
  })));
291
268
  return Object.freeze({ operations: Object.freeze(operations) });
@@ -294,13 +271,41 @@ export class NodeConsumerUpgradeSandbox {
294
271
  await rm(temporary, { force: true, recursive: true });
295
272
  }
296
273
  }
297
- async activateAndVerify(options) {
274
+ prepareV1(options) {
275
+ return this.prepareGeneration(options);
276
+ }
277
+ prepareV2(options) {
278
+ return this.prepareGeneration(options);
279
+ }
280
+ prepareV1ToV2(options) {
281
+ return this.prepareGeneration(options);
282
+ }
283
+ async activateAndVerifyGeneration(options) {
298
284
  await installCohort(options.consumerRoot, true);
299
- await assertInstalledIntegrationCurrent(options.consumerRoot);
285
+ await assertInstalledIntegrationCurrent(options.consumerRoot, execute);
286
+ }
287
+ activateAndVerifyV1(options) {
288
+ return this.activateAndVerifyGeneration(options);
300
289
  }
301
- async restoreAndVerify(options) {
290
+ activateAndVerifyV2(options) {
291
+ return this.activateAndVerifyGeneration(options);
292
+ }
293
+ async restoreAndVerifyGeneration(options) {
302
294
  await installCohort(options.consumerRoot, true);
303
- await assertInstalledIntegrationCurrent(options.consumerRoot);
295
+ if (options.current.schemaVersion === 1) {
296
+ await assertInstalledHistoricalIntegrationCurrent(options.consumerRoot, execute);
297
+ }
298
+ else {
299
+ await assertInstalledIntegrationCurrent(options.consumerRoot, execute);
300
+ }
301
+ }
302
+ restoreAndVerifyV1(options) {
303
+ return this.restoreAndVerifyGeneration(options);
304
+ }
305
+ async restoreAndVerifyV2(options) {
306
+ await assertCleanGitRoot(options.consumerRoot);
307
+ await this.restoreAndVerifyGeneration(options);
308
+ await assertCleanGitRoot(options.consumerRoot);
304
309
  }
305
310
  }
306
311
  export const nodeConsumerUpgradeSandbox = Object.freeze(new NodeConsumerUpgradeSandbox());
@@ -1 +1 @@
1
- {"version":3,"file":"node-consumer-upgrade-sandbox.js","sourceRoot":"","sources":["../../../src/consumer-integration/adapters/node-consumer-upgrade-sandbox.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-consumer-upgrade-sandbox.js","sourceRoot":"","sources":["../../../src/consumer-integration/adapters/node-consumer-upgrade-sandbox.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { ConsumerUpgradeManagedPreimagesV2 } from "../application/ports/consumer-upgrade.js";
2
+ import type { ConsumerIntegrationDesiredStateV1, ConsumerIntegrationDesiredStateV3, ConsumerIntegrationSnapshot } from "../domain/model.js";
3
+ type UpgradeDesiredState = ConsumerIntegrationDesiredStateV1 | ConsumerIntegrationDesiredStateV3;
4
+ export declare function assertCleanConsumerGitSource(root: string, execute: (executable: string, args: readonly string[], cwd: string) => Promise<{
5
+ readonly stdout: string;
6
+ }>): Promise<string>;
7
+ export declare function allowedUpgradePaths(current: UpgradeDesiredState): ReadonlySet<string>;
8
+ export declare function assertProvedSourceSnapshot(input: {
9
+ readonly current: UpgradeDesiredState;
10
+ readonly expected: ConsumerIntegrationSnapshot;
11
+ readonly sourceRoot: string;
12
+ }): Promise<void>;
13
+ export declare function resetProvedManagedAssetsV2(input: {
14
+ readonly current: ConsumerIntegrationDesiredStateV3;
15
+ readonly managedPreimages: ConsumerUpgradeManagedPreimagesV2;
16
+ readonly stagedRoot: string;
17
+ }): Promise<void>;
18
+ export declare function assertManagedAssetsCreatedV2(root: string, current: UpgradeDesiredState): Promise<void>;
19
+ export {};
20
+ //# sourceMappingURL=node-consumer-upgrade-source-proof.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-consumer-upgrade-source-proof.d.ts","sourceRoot":"","sources":["../../../src/consumer-integration/adapters/node-consumer-upgrade-source-proof.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,iCAAiC,EAClC,MAAM,0CAA0C,CAAC;AAClD,OAAO,KAAK,EACV,iCAAiC,EACjC,iCAAiC,EACjC,2BAA2B,EAC5B,MAAM,oBAAoB,CAAC;AAY5B,KAAK,mBAAmB,GAAG,iCAAiC,GAAG,iCAAiC,CAAC;AAGjG,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAC7E,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB,CAAC,GACD,OAAO,CAAC,MAAM,CAAC,CAuBjB;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,mBAAmB,GAAG,WAAW,CAAC,MAAM,CAAC,CAWrF;AAcD,wBAAsB,0BAA0B,CAAC,KAAK,EAAE;IACtD,QAAQ,CAAC,OAAO,EAAE,mBAAmB,CAAC;IACtC,QAAQ,CAAC,QAAQ,EAAE,2BAA2B,CAAC;IAC/C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,GAAG,OAAO,CAAC,IAAI,CAAC,CAwBhB;AAMD,wBAAsB,0BAA0B,CAAC,KAAK,EAAE;IACtD,QAAQ,CAAC,OAAO,EAAE,iCAAiC,CAAC;IACpD,QAAQ,CAAC,gBAAgB,EAAE,iCAAiC,CAAC;IAC7D,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B,GAAG,OAAO,CAAC,IAAI,CAAC,CAkChB;AAED,wBAAsB,4BAA4B,CAChD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,IAAI,CAAC,CAWf"}
@@ -0,0 +1,89 @@
1
+ import { createHash } from "node:crypto";
2
+ import { rm } from "node:fs/promises";
3
+ import { isAbsolute, relative, resolve as resolvePath, sep } from "node:path";
4
+ import { ConsumerIntegrationNodeError } from "./consumer-integration-node-error.js";
5
+ import { INTEGRATION_PROFILE_PATH, MAXIMUM_LOCKFILE_BYTES, MAXIMUM_MANAGED_ASSET_BYTES, MAXIMUM_MANIFEST_BYTES, MAXIMUM_PROFILE_BYTES, readStableConsumerFile, sameConsumerFileObservation } from "./node-consumer-repository-files.js";
6
+ const WORKSPACE_PATH = "pnpm-workspace.yaml";
7
+ export async function assertCleanConsumerGitSource(root, execute) {
8
+ const status = await execute("git", [
9
+ "status", "--porcelain=v1", "--untracked-files=all", "--", ".",
10
+ ":(exclude).agent-teams-local", ":(exclude).agent-teams-local/**"
11
+ ], root);
12
+ if (status.stdout !== "") {
13
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_DIRTY_WORKTREE", "One-command Cohort upgrade requires a clean consumer Git worktree.");
14
+ }
15
+ const head = (await execute("git", ["rev-parse", "HEAD"], root)).stdout.trim();
16
+ if (!/^(?!0{40}$)[0-9a-f]{40}$/u.test(head)) {
17
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_GIT_INVALID", "Consumer worktree must have one exact Git HEAD.");
18
+ }
19
+ return head;
20
+ }
21
+ export function allowedUpgradePaths(current) {
22
+ return new Set([
23
+ "AGENTS.md",
24
+ INTEGRATION_PROFILE_PATH,
25
+ "package.json",
26
+ "pnpm-lock.yaml",
27
+ WORKSPACE_PATH,
28
+ current.skillPath,
29
+ current.callerWorkflowPath,
30
+ current.managedStatePath
31
+ ]);
32
+ }
33
+ function contained(root, repositoryPath) {
34
+ const path = resolvePath(root, repositoryPath);
35
+ const relation = relative(root, path);
36
+ if (isAbsolute(relation) || relation === ".." || relation.startsWith(`..${sep}`)) {
37
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_PATH_ESCAPE", `Upgrade path escapes the disposable repository: ${repositoryPath}.`);
38
+ }
39
+ return path;
40
+ }
41
+ export async function assertProvedSourceSnapshot(input) {
42
+ const definitions = [
43
+ ["integrationProfile", INTEGRATION_PROFILE_PATH, MAXIMUM_PROFILE_BYTES, true],
44
+ ["lockfile", "pnpm-lock.yaml", MAXIMUM_LOCKFILE_BYTES, true],
45
+ ["packageManifest", "package.json", MAXIMUM_MANIFEST_BYTES, true],
46
+ ["agents", "AGENTS.md", MAXIMUM_MANAGED_ASSET_BYTES, false],
47
+ ["skill", input.current.skillPath, MAXIMUM_MANAGED_ASSET_BYTES, false],
48
+ ["callerWorkflow", input.current.callerWorkflowPath, MAXIMUM_MANAGED_ASSET_BYTES, false],
49
+ ["managedState", input.current.managedStatePath, MAXIMUM_MANAGED_ASSET_BYTES, false]
50
+ ];
51
+ for (const [key, path, byteLimit, required] of definitions) {
52
+ const observed = await readStableConsumerFile(input.sourceRoot, path, byteLimit, required);
53
+ if (!sameConsumerFileObservation(input.expected[key], observed)) {
54
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_SOURCE_CHANGED", `Committed source differs from the proved source snapshot: ${path}.`);
55
+ }
56
+ }
57
+ }
58
+ function sha256(bytes) {
59
+ return `sha256:${createHash("sha256").update(bytes).digest("hex")}`;
60
+ }
61
+ export async function resetProvedManagedAssetsV2(input) {
62
+ const entries = [
63
+ [input.current.callerWorkflowPath, input.managedPreimages.callerWorkflow],
64
+ [input.current.managedStatePath, input.managedPreimages.managedState],
65
+ [input.current.skillPath, input.managedPreimages.skill]
66
+ ];
67
+ if (new Set(entries.map(([path]) => path)).size !== entries.length) {
68
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_SOURCE_CHANGED", "Managed source asset paths are not distinct.");
69
+ }
70
+ for (const [path, proof] of entries) {
71
+ if (proof.path !== path) {
72
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_SOURCE_CHANGED", `Managed source asset proof path differs from the profile: ${path}.`);
73
+ }
74
+ const observed = await readStableConsumerFile(input.stagedRoot, path, MAXIMUM_MANAGED_ASSET_BYTES, true);
75
+ if (observed.state !== "file" || observed.mode !== proof.mode ||
76
+ sha256(observed.bytes) !== proof.digest) {
77
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_SOURCE_CHANGED", `Managed source asset differs from the proved source plan: ${path}.`);
78
+ }
79
+ }
80
+ await Promise.all(entries.map(([path]) => rm(contained(input.stagedRoot, path))));
81
+ }
82
+ export async function assertManagedAssetsCreatedV2(root, current) {
83
+ await Promise.all([
84
+ current.callerWorkflowPath,
85
+ current.managedStatePath,
86
+ current.skillPath
87
+ ].map((path) => readStableConsumerFile(root, path, MAXIMUM_MANAGED_ASSET_BYTES, true)));
88
+ }
89
+ //# sourceMappingURL=node-consumer-upgrade-source-proof.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-consumer-upgrade-source-proof.js","sourceRoot":"","sources":["../../../src/consumer-integration/adapters/node-consumer-upgrade-source-proof.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,IAAI,WAAW,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAU9E,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EACL,wBAAwB,EACxB,sBAAsB,EACtB,2BAA2B,EAC3B,sBAAsB,EACtB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,EAC5B,MAAM,qCAAqC,CAAC;AAG7C,MAAM,cAAc,GAAG,qBAAqB,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,IAAY,EACZ,OAEE;IAEF,MAAM,MAAM,GAAG,MAAM,OAAO,CAC1B,KAAK,EACL;QACE,QAAQ,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,IAAI,EAAE,GAAG;QAC9D,8BAA8B,EAAE,iCAAiC;KAClE,EACD,IAAI,CACL,CAAC;IACF,IAAI,MAAM,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;QACzB,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,oEAAoE,CACrE,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,MAAM,OAAO,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC/E,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,4BAA4B,CACpC,mCAAmC,EACnC,iDAAiD,CAClD,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,OAA4B;IAC9D,OAAO,IAAI,GAAG,CAAC;QACb,WAAW;QACX,wBAAwB;QACxB,cAAc;QACd,gBAAgB;QAChB,cAAc;QACd,OAAO,CAAC,SAAS;QACjB,OAAO,CAAC,kBAAkB;QAC1B,OAAO,CAAC,gBAAgB;KACzB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,IAAY,EAAE,cAAsB;IACrD,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC/C,MAAM,QAAQ,GAAG,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACtC,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,UAAU,CAAC,KAAK,GAAG,EAAE,CAAC,EAAE,CAAC;QACjF,MAAM,IAAI,4BAA4B,CACpC,2BAA2B,EAC3B,mDAAmD,cAAc,GAAG,CACrE,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,KAIhD;IACC,MAAM,WAAW,GAAG;QAClB,CAAC,oBAAoB,EAAE,wBAAwB,EAAE,qBAAqB,EAAE,IAAI,CAAC;QAC7E,CAAC,UAAU,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,IAAI,CAAC;QAC5D,CAAC,iBAAiB,EAAE,cAAc,EAAE,sBAAsB,EAAE,IAAI,CAAC;QACjE,CAAC,QAAQ,EAAE,WAAW,EAAE,2BAA2B,EAAE,KAAK,CAAC;QAC3D,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,2BAA2B,EAAE,KAAK,CAAC;QACtE,CAAC,gBAAgB,EAAE,KAAK,CAAC,OAAO,CAAC,kBAAkB,EAAE,2BAA2B,EAAE,KAAK,CAAC;QACxF,CAAC,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,2BAA2B,EAAE,KAAK,CAAC;KAC5E,CAAC;IACX,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,CAAC,IAAI,WAAW,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAC3C,KAAK,CAAC,UAAU,EAChB,IAAI,EACJ,SAAS,EACT,QAAQ,CACT,CAAC;QACF,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;YAChE,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,6DAA6D,IAAI,GAAG,CACrE,CAAC;QACJ,CAAC;IACH,CAAC;AACH,CAAC;AAED,SAAS,MAAM,CAAC,KAAiB;IAC/B,OAAO,UAAU,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AACtE,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,KAIhD;IACC,MAAM,OAAO,GAAG;QACd,CAAC,KAAK,CAAC,OAAO,CAAC,kBAAkB,EAAE,KAAK,CAAC,gBAAgB,CAAC,cAAc,CAAC;QACzE,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC;QACrE,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC;KAC/C,CAAC;IACX,IAAI,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,EAAE,CAAC;QACnE,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,8CAA8C,CAC/C,CAAC;IACJ,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,OAAO,EAAE,CAAC;QACpC,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YACxB,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,6DAA6D,IAAI,GAAG,CACrE,CAAC;QACJ,CAAC;QACD,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAC3C,KAAK,CAAC,UAAU,EAChB,IAAI,EACJ,2BAA2B,EAC3B,IAAI,CACL,CAAC;QACF,IAAI,QAAQ,CAAC,KAAK,KAAK,MAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI;YAC3D,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;YAC1C,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,6DAA6D,IAAI,GAAG,CACrE,CAAC;QACJ,CAAC;IACH,CAAC;IACD,MAAM,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AACpF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,IAAY,EACZ,OAA4B;IAE5B,MAAM,OAAO,CAAC,GAAG,CAAC;QAChB,OAAO,CAAC,kBAAkB;QAC1B,OAAO,CAAC,gBAAgB;QACxB,OAAO,CAAC,SAAS;KAClB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,sBAAsB,CACpC,IAAI,EACJ,IAAI,EACJ,2BAA2B,EAC3B,IAAI,CACL,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,11 @@
1
+ interface ProcessResult {
2
+ readonly code: number;
3
+ readonly stderr: string;
4
+ readonly stdout: string;
5
+ }
6
+ type Execute = (executable: string, args: readonly string[], cwd: string, allowedExitCodes?: readonly number[]) => Promise<ProcessResult>;
7
+ export declare function assertInstalledIntegrationCurrent(root: string, execute: Execute): Promise<void>;
8
+ export declare function assertInstalledHistoricalIntegrationCurrent(root: string, execute: Execute): Promise<void>;
9
+ export declare function applyTargetIntegration(root: string, cohortId: string, execute: Execute): Promise<void>;
10
+ export {};
11
+ //# sourceMappingURL=node-consumer-upgrade-target.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-consumer-upgrade-target.d.ts","sourceRoot":"","sources":["../../../src/consumer-integration/adapters/node-consumer-upgrade-target.ts"],"names":[],"mappings":"AAKA,UAAU,aAAa;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;CACzB;AAED,KAAK,OAAO,GAAG,CACb,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,EACX,gBAAgB,CAAC,EAAE,SAAS,MAAM,EAAE,KACjC,OAAO,CAAC,aAAa,CAAC,CAAC;AA8C5B,wBAAsB,iCAAiC,CACrD,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAOf;AAED,wBAAsB,2CAA2C,CAC/D,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CAQf;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,IAAI,CAAC,CA4Bf"}
@@ -0,0 +1,60 @@
1
+ import { lstat } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import { ConsumerIntegrationNodeError } from "./consumer-integration-node-error.js";
4
+ function parseExecution(result) {
5
+ try {
6
+ const parsed = JSON.parse(result.stdout);
7
+ if (typeof parsed === "object" && parsed !== null && !Array.isArray(parsed)) {
8
+ return parsed;
9
+ }
10
+ }
11
+ catch { }
12
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_INVALID", "Target Docs Protocol CLI did not return one JSON execution envelope.");
13
+ }
14
+ async function invoke(root, args, execute, owner = "managed-target") {
15
+ const packageName = owner === "historical-source" ? "docs-protocol" : "docs-protocol-agent-teams";
16
+ const cli = join(root, "node_modules", "@agent-teams", packageName, "dist", "cli.js");
17
+ const metadata = await lstat(cli);
18
+ if (!metadata.isFile() || metadata.isSymbolicLink() || metadata.nlink > 1) {
19
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_INVALID", "Installed target Docs Protocol CLI is not one regular package file.");
20
+ }
21
+ const result = await execute(process.execPath, [cli, ...args, "--consumer", root, "--json"], root, [0, 1]);
22
+ const execution = parseExecution(result);
23
+ if (result.code !== 0 && ["current", "applied"].includes(String(execution["outcome"]))) {
24
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_INVALID", "An installed CLI with a nonzero exit cannot report successful activation.");
25
+ }
26
+ return execution;
27
+ }
28
+ export async function assertInstalledIntegrationCurrent(root, execute) {
29
+ if ((await invoke(root, ["check"], execute))["outcome"] !== "current") {
30
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_BLOCKED", "Target Docs Protocol check did not converge in the disposable repository.");
31
+ }
32
+ }
33
+ export async function assertInstalledHistoricalIntegrationCurrent(root, execute) {
34
+ const result = await invoke(root, ["consumer", "check"], execute, "historical-source");
35
+ if (result["outcome"] !== "current") {
36
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_SOURCE_NOT_CURRENT", "Restored historical Docs Protocol check did not converge.");
37
+ }
38
+ }
39
+ export async function applyTargetIntegration(root, cohortId, execute) {
40
+ const plan = await invoke(root, ["plan", "--to", cohortId], execute);
41
+ if (plan["outcome"] === "change-required") {
42
+ const value = plan["plan"];
43
+ const digest = typeof value === "object" && value !== null && !Array.isArray(value)
44
+ ? value["planDigest"] : undefined;
45
+ if (typeof digest !== "string") {
46
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_INVALID", "Target Docs Protocol Plan did not expose one exact digest.");
47
+ }
48
+ const applied = await invoke(root, ["apply", "--expect", digest], execute);
49
+ if (applied["outcome"] !== "applied" && applied["outcome"] !== "current") {
50
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_BLOCKED", "Target Docs Protocol apply did not converge in the disposable repository.");
51
+ }
52
+ }
53
+ else if (plan["outcome"] !== "current") {
54
+ const issues = Array.isArray(plan["issues"])
55
+ ? JSON.stringify(plan["issues"]).slice(0, 4000) : "no bounded issue detail";
56
+ throw new ConsumerIntegrationNodeError("DOCS_CONSUMER_UPGRADE_TARGET_BLOCKED", `Target Docs Protocol rejected the projected Cohort in the disposable repository: ${issues}`);
57
+ }
58
+ await assertInstalledIntegrationCurrent(root, execute);
59
+ }
60
+ //# sourceMappingURL=node-consumer-upgrade-target.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node-consumer-upgrade-target.js","sourceRoot":"","sources":["../../../src/consumer-integration/adapters/node-consumer-upgrade-target.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,4BAA4B,EAAE,MAAM,sCAAsC,CAAC;AAepF,SAAS,cAAc,CAAC,MAAqB;IAC3C,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAY,CAAC;QACpD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YAC5E,OAAO,MAAiC,CAAC;QAC3C,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IACV,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,sEAAsE,CACvE,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,MAAM,CACnB,IAAY,EACZ,IAAuB,EACvB,OAAgB,EAChB,KAAK,GAA2C,gBAAgB;IAEhE,MAAM,WAAW,GAAG,KAAK,KAAK,mBAAmB,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,2BAA2B,CAAC;IAClG,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACtF,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IAClC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,QAAQ,CAAC,cAAc,EAAE,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC,EAAE,CAAC;QAC1E,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,qEAAqE,CACtE,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,OAAO,CAC1B,OAAO,CAAC,QAAQ,EAChB,CAAC,GAAG,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,CAAC,EAC5C,IAAI,EACJ,CAAC,CAAC,EAAE,CAAC,CAAC,CACP,CAAC;IACF,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC;IACzC,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,2EAA2E,CAC5E,CAAC;IACJ,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iCAAiC,CACrD,IAAY,EACZ,OAAgB;IAEhB,IAAI,CAAC,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE,CAAC;QACtE,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,2EAA2E,CAC5E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,2CAA2C,CAC/D,IAAY,EACZ,OAAgB;IAEhB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,mBAAmB,CAAC,CAAC;IACvF,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE,CAAC;QACpC,MAAM,IAAI,4BAA4B,CACpC,0CAA0C,EAC1C,2DAA2D,CAC5D,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAY,EACZ,QAAgB,EAChB,OAAgB;IAEhB,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,OAAO,CAAC,CAAC;IACrE,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,iBAAiB,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YACjF,CAAC,CAAE,KAAiC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjE,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,4DAA4D,CAC7D,CAAC;QACJ,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC;QAC3E,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE,CAAC;YACzE,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,2EAA2E,CAC5E,CAAC;QACJ,CAAC;IACH,CAAC;SAAM,IAAI,IAAI,CAAC,SAAS,CAAC,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1C,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,yBAAyB,CAAC;QAC9E,MAAM,IAAI,4BAA4B,CACpC,sCAAsC,EACtC,oFAAoF,MAAM,EAAE,CAC7F,CAAC;IACJ,CAAC;IACD,MAAM,iCAAiC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AACzD,CAAC"}
@@ -1,3 +1,3 @@
1
1
  export declare function validPnpmPeerContext(value: unknown, exactVersion: string): value is string;
2
- export declare function targetsManagedPackage(value: unknown): boolean;
2
+ export declare function targetsManagedPackage(value: unknown, packageNames: readonly string[]): boolean;
3
3
  //# sourceMappingURL=pnpm-lockfile-policy-v1.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pnpm-lockfile-policy-v1.d.ts","sourceRoot":"","sources":["../../../src/consumer-integration/adapters/pnpm-lockfile-policy-v1.ts"],"names":[],"mappings":"AAAA,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,GAAG,KAAK,IAAI,MAAM,CAgB1F;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAM7D"}
1
+ {"version":3,"file":"pnpm-lockfile-policy-v1.d.ts","sourceRoot":"","sources":["../../../src/consumer-integration/adapters/pnpm-lockfile-policy-v1.ts"],"names":[],"mappings":"AAAA,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,GAAG,KAAK,IAAI,MAAM,CAgB1F;AAED,wBAAgB,qBAAqB,CACnC,KAAK,EAAE,OAAO,EACd,YAAY,EAAE,SAAS,MAAM,EAAE,GAC9B,OAAO,CAKT"}
@@ -27,11 +27,10 @@ export function validPnpmPeerContext(value, exactVersion) {
27
27
  }
28
28
  return contentByDepth.length === 0;
29
29
  }
30
- export function targetsManagedPackage(value) {
30
+ export function targetsManagedPackage(value, packageNames) {
31
31
  if (typeof value !== "object" || value === null || Array.isArray(value)) {
32
32
  return false;
33
33
  }
34
- return Object.keys(value).some((key) => key.includes("@agent-teams/docs-protocol") ||
35
- key.includes("@agent-teams/engineering-foundation"));
34
+ return Object.keys(value).some((key) => packageNames.some((packageName) => key.includes(packageName)));
36
35
  }
37
36
  //# sourceMappingURL=pnpm-lockfile-policy-v1.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pnpm-lockfile-policy-v1.js","sourceRoot":"","sources":["../../../src/consumer-integration/adapters/pnpm-lockfile-policy-v1.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAC,KAAc,EAAE,YAAoB;IACvE,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QAAA,OAAO,IAAI,CAAC;IAAA,CAAC;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC;QAAA,OAAO,KAAK,CAAC;IAAA,CAAC;IACvF,MAAM,cAAc,GAAc,EAAE,CAAC;IACrC,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YACtB,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YAC7B,IAAI,cAAc,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC;gBAAA,OAAO,KAAK,CAAC;YAAA,CAAC;YAClD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAAA,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;YAAA,CAAC;QACpF,CAAC;aAAM,CAAC;YACN,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBAAA,OAAO,KAAK,CAAC;YAAA,CAAC;YACzE,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;QACnD,CAAC;IACH,CAAC;IACD,OAAO,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAc;IAClD,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAAA,OAAO,KAAK,CAAC;IAAA,CAAC;IACxF,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CACrC,GAAG,CAAC,QAAQ,CAAC,4BAA4B,CAAC;QAC1C,GAAG,CAAC,QAAQ,CAAC,qCAAqC,CAAC,CACpD,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"pnpm-lockfile-policy-v1.js","sourceRoot":"","sources":["../../../src/consumer-integration/adapters/pnpm-lockfile-policy-v1.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,oBAAoB,CAAC,KAAc,EAAE,YAAoB;IACvE,IAAI,KAAK,KAAK,YAAY,EAAE,CAAC;QAAA,OAAO,IAAI,CAAC;IAAA,CAAC;IAC1C,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,YAAY,GAAG,CAAC,EAAE,CAAC;QAAA,OAAO,KAAK,CAAC;IAAA,CAAC;IACvF,MAAM,cAAc,GAAc,EAAE,CAAC;IACrC,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,CAAC;QACzD,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YACtB,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;aAAM,IAAI,SAAS,KAAK,GAAG,EAAE,CAAC;YAC7B,IAAI,cAAc,CAAC,GAAG,EAAE,KAAK,IAAI,EAAE,CAAC;gBAAA,OAAO,KAAK,CAAC;YAAA,CAAC;YAClD,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAAA,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;YAAA,CAAC;QACpF,CAAC;aAAM,CAAC;YACN,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBAAA,OAAO,KAAK,CAAC;YAAA,CAAC;YACzE,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC;QACnD,CAAC;IACH,CAAC;IACD,OAAO,cAAc,CAAC,MAAM,KAAK,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,KAAc,EACd,YAA+B;IAE/B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QAAA,OAAO,KAAK,CAAC;IAAA,CAAC;IACxF,OAAO,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CACrC,YAAY,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAC9D,CAAC;AACJ,CAAC"}