@tacuchi/agent-workflow-cli 21.17.0 → 22.0.0

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 (204) hide show
  1. package/README.md +4 -16
  2. package/dist/adapters/git-cli.js +36 -0
  3. package/dist/adapters/git-cli.js.map +1 -1
  4. package/dist/application/capability/design-handler.js +67 -21
  5. package/dist/application/capability/design-handler.js.map +1 -1
  6. package/dist/application/capability/dispatcher.js +1 -1
  7. package/dist/application/capability/dispatcher.js.map +1 -1
  8. package/dist/application/capability/durable-effect.js +1 -1
  9. package/dist/application/capability/durable-effect.js.map +1 -1
  10. package/dist/application/check-branch-service.js +1 -0
  11. package/dist/application/check-branch-service.js.map +1 -1
  12. package/dist/application/checkpoint-service.js +4 -3
  13. package/dist/application/checkpoint-service.js.map +1 -1
  14. package/dist/application/design/consumer-document.js +179 -0
  15. package/dist/application/design/consumer-document.js.map +1 -0
  16. package/dist/application/design/design-gate-service.js +18 -1
  17. package/dist/application/design/design-gate-service.js.map +1 -1
  18. package/dist/application/design/design-index-service.js +22 -3
  19. package/dist/application/design/design-index-service.js.map +1 -1
  20. package/dist/application/design/design-publish-service.js +27 -6
  21. package/dist/application/design/design-publish-service.js.map +1 -1
  22. package/dist/application/design/design-simple-service.js +34 -22
  23. package/dist/application/design/design-simple-service.js.map +1 -1
  24. package/dist/application/dev-only-services.js +19 -12
  25. package/dist/application/dev-only-services.js.map +1 -1
  26. package/dist/application/docs-canon-service.js +79 -5
  27. package/dist/application/docs-canon-service.js.map +1 -1
  28. package/dist/application/dsn-reader-service.js +12 -47
  29. package/dist/application/dsn-reader-service.js.map +1 -1
  30. package/dist/application/export-service.js +20 -11
  31. package/dist/application/export-service.js.map +1 -1
  32. package/dist/application/flow/flow-service.js +25 -0
  33. package/dist/application/flow/flow-service.js.map +1 -1
  34. package/dist/application/flow/internal-actions.js +5 -0
  35. package/dist/application/flow/internal-actions.js.map +1 -1
  36. package/dist/application/flow/submit.js +152 -22
  37. package/dist/application/flow/submit.js.map +1 -1
  38. package/dist/application/history-table.js +82 -44
  39. package/dist/application/history-table.js.map +1 -1
  40. package/dist/application/history-update-service.js +19 -9
  41. package/dist/application/history-update-service.js.map +1 -1
  42. package/dist/application/hook-git-commit-advisor.js +5 -4
  43. package/dist/application/hook-git-commit-advisor.js.map +1 -1
  44. package/dist/application/hook-sql-mutation-guard.js +1 -1
  45. package/dist/application/hook-sql-mutation-guard.js.map +1 -1
  46. package/dist/application/lifecycle-target.js +1 -0
  47. package/dist/application/lifecycle-target.js.map +1 -1
  48. package/dist/application/local-proposal.js +47 -23
  49. package/dist/application/local-proposal.js.map +1 -1
  50. package/dist/application/mcp-connections-service.js +37 -2
  51. package/dist/application/mcp-connections-service.js.map +1 -1
  52. package/dist/application/mcp-dbhub-launcher.js +22 -50
  53. package/dist/application/mcp-dbhub-launcher.js.map +1 -1
  54. package/dist/application/mcp-doctor-service.js +14 -23
  55. package/dist/application/mcp-doctor-service.js.map +1 -1
  56. package/dist/application/mcp-remove-service.js +3 -3
  57. package/dist/application/mcp-remove-service.js.map +1 -1
  58. package/dist/application/mcp-setup-service.js +4 -4
  59. package/dist/application/mcp-setup-service.js.map +1 -1
  60. package/dist/application/mcp-test-connection-service.js +4 -6
  61. package/dist/application/mcp-test-connection-service.js.map +1 -1
  62. package/dist/application/parsers/phases.js +17 -5
  63. package/dist/application/parsers/phases.js.map +1 -1
  64. package/dist/application/parsers/project-block.js +5 -11
  65. package/dist/application/parsers/project-block.js.map +1 -1
  66. package/dist/application/parsers/sessions-csv.js +16 -14
  67. package/dist/application/parsers/sessions-csv.js.map +1 -1
  68. package/dist/application/parsers/spec-relation.js +15 -11
  69. package/dist/application/parsers/spec-relation.js.map +1 -1
  70. package/dist/application/parsers/tasks.js +25 -1
  71. package/dist/application/parsers/tasks.js.map +1 -1
  72. package/dist/application/persist-service.js +67 -29
  73. package/dist/application/persist-service.js.map +1 -1
  74. package/dist/application/plugin-doctor/skills.js +1 -40
  75. package/dist/application/plugin-doctor/skills.js.map +1 -1
  76. package/dist/application/plugin-doctor-service.js +1 -3
  77. package/dist/application/plugin-doctor-service.js.map +1 -1
  78. package/dist/application/release-data/artifacts.js +1 -0
  79. package/dist/application/release-data/artifacts.js.map +1 -1
  80. package/dist/application/release-data/bundles.js +15 -6
  81. package/dist/application/release-data/bundles.js.map +1 -1
  82. package/dist/application/release-data/common.js +16 -7
  83. package/dist/application/release-data/common.js.map +1 -1
  84. package/dist/application/release-data/sessions.js +36 -8
  85. package/dist/application/release-data/sessions.js.map +1 -1
  86. package/dist/application/render/project-block.js +2 -2
  87. package/dist/application/render/project-block.js.map +1 -1
  88. package/dist/application/resume-service.js +9 -1
  89. package/dist/application/resume-service.js.map +1 -1
  90. package/dist/application/retirement/graph.js +14 -13
  91. package/dist/application/retirement/graph.js.map +1 -1
  92. package/dist/application/retirement/prepare.js +15 -2
  93. package/dist/application/retirement/prepare.js.map +1 -1
  94. package/dist/application/retirement/resolve.js.map +1 -1
  95. package/dist/application/self/clean-legacy.js +2 -4
  96. package/dist/application/self/clean-legacy.js.map +1 -1
  97. package/dist/application/self/mcp-config.js +8 -9
  98. package/dist/application/self/mcp-config.js.map +1 -1
  99. package/dist/application/session-close-service.js +8 -2
  100. package/dist/application/session-close-service.js.map +1 -1
  101. package/dist/application/session-create-service.js +26 -14
  102. package/dist/application/session-create-service.js.map +1 -1
  103. package/dist/application/session-resolver.js +80 -34
  104. package/dist/application/session-resolver.js.map +1 -1
  105. package/dist/application/session-resume-service.js +4 -3
  106. package/dist/application/session-resume-service.js.map +1 -1
  107. package/dist/application/source-boundary-policy.js +483 -0
  108. package/dist/application/source-boundary-policy.js.map +1 -0
  109. package/dist/application/status-service.js +1 -0
  110. package/dist/application/status-service.js.map +1 -1
  111. package/dist/application/workline-index-service.js +42 -20
  112. package/dist/application/workline-index-service.js.map +1 -1
  113. package/dist/application/workspace-migrate/apply.js +2 -4
  114. package/dist/application/workspace-migrate/apply.js.map +1 -1
  115. package/dist/application/workspace-migrate/plan.js +9 -6
  116. package/dist/application/workspace-migrate/plan.js.map +1 -1
  117. package/dist/application/workspace-migrate/preview.js +3 -3
  118. package/dist/application/workspace-migrate/preview.js.map +1 -1
  119. package/dist/application/worktree-service.js +3 -0
  120. package/dist/application/worktree-service.js.map +1 -1
  121. package/dist/cli/commands/capability.js +89 -5
  122. package/dist/cli/commands/capability.js.map +1 -1
  123. package/dist/cli/commands/designs.js +2 -6
  124. package/dist/cli/commands/designs.js.map +1 -1
  125. package/dist/cli/commands/dev-only.js +1 -1
  126. package/dist/cli/commands/dev-only.js.map +1 -1
  127. package/dist/cli/commands/flow.js +3 -1
  128. package/dist/cli/commands/flow.js.map +1 -1
  129. package/dist/cli/commands/index.js +0 -2
  130. package/dist/cli/commands/index.js.map +1 -1
  131. package/dist/cli/commands/mcp.js +53 -55
  132. package/dist/cli/commands/mcp.js.map +1 -1
  133. package/dist/cli/commands/persist.js +27 -21
  134. package/dist/cli/commands/persist.js.map +1 -1
  135. package/dist/cli/commands/resume.js +2 -2
  136. package/dist/cli/commands/resume.js.map +1 -1
  137. package/dist/cli/commands/session-create.js +2 -1
  138. package/dist/cli/commands/session-create.js.map +1 -1
  139. package/dist/cli/help-groups.js +0 -1
  140. package/dist/cli/help-groups.js.map +1 -1
  141. package/dist/cli/main.js +0 -0
  142. package/dist/cli/main.js.map +1 -1
  143. package/dist/cli/parser.js +1 -0
  144. package/dist/cli/parser.js.map +1 -1
  145. package/dist/cli/tui/data/recommended-skills.js +2 -2
  146. package/dist/cli/tui/data/recommended-skills.js.map +1 -1
  147. package/dist/cli/tui/tabs/mcp-tab-helpers.js +1 -1
  148. package/dist/cli/tui/tabs/mcp-tab.js +2 -2
  149. package/dist/cli/tui/tabs/mcp-tab.js.map +1 -1
  150. package/dist/domain/capability/protocol.js.map +1 -1
  151. package/dist/domain/correlative.js +121 -0
  152. package/dist/domain/correlative.js.map +1 -0
  153. package/dist/domain/design/capability.js +18 -0
  154. package/dist/domain/design/capability.js.map +1 -1
  155. package/dist/domain/docs-canon.js +31 -0
  156. package/dist/domain/docs-canon.js.map +1 -0
  157. package/dist/domain/flow/answer.js +57 -1
  158. package/dist/domain/flow/answer.js.map +1 -1
  159. package/dist/domain/flow/authority.js +28 -29
  160. package/dist/domain/flow/authority.js.map +1 -1
  161. package/dist/domain/flow/execution-result.js +13 -1
  162. package/dist/domain/flow/execution-result.js.map +1 -1
  163. package/dist/domain/flow/run-state.js.map +1 -1
  164. package/dist/domain/mcp-entry.js +7 -12
  165. package/dist/domain/mcp-entry.js.map +1 -1
  166. package/dist/domain/retirement/selector.js +16 -14
  167. package/dist/domain/retirement/selector.js.map +1 -1
  168. package/dist/domain/source-boundary.js +3 -0
  169. package/dist/domain/source-boundary.js.map +1 -0
  170. package/dist/domain/workline-node.js +12 -5
  171. package/dist/domain/workline-node.js.map +1 -1
  172. package/dist/runtime/namespace-resolver.js +0 -3
  173. package/dist/runtime/namespace-resolver.js.map +1 -1
  174. package/package.json +5 -5
  175. package/skills/w/SKILL.md +2 -2
  176. package/skills/w/artifacts/artifacts-core/SCRIPTS.sql +14 -9
  177. package/skills/w/artifacts/artifacts-research/CONCLUSIONS.md +7 -0
  178. package/skills/w/commands/export-scripts.md +8 -2
  179. package/skills/w/commands/plan-new.md +1 -0
  180. package/skills/w/context/MANIFEST.json +2 -9
  181. package/skills/w/exports/export-scripts/EXPORT.md +13 -9
  182. package/skills/w/loops/CHASSIS.md +1 -1
  183. package/skills/w/loops/plan-exec-loop/LOOP.md +14 -10
  184. package/skills/w/loops/plan-new-loop/LOOP.md +16 -16
  185. package/skills/w/loops/plan-refine-loop/LOOP.md +6 -1
  186. package/skills/w/loops/quick-loop/LOOP.md +2 -2
  187. package/skills/w/loops/spec-refine-loop/LOOP.md +4 -0
  188. package/skills/w/modules/DB-RESEARCH-RULE.md +5 -5
  189. package/skills/w/modules/DB-SCRIPTS-ONLY.md +5 -6
  190. package/skills/w/modules/EXEC-DB-POLICY.md +2 -2
  191. package/skills/w/modules/PLAN-INPUT.md +11 -9
  192. package/skills/w/roles/sql/ROLE.md +9 -9
  193. package/dist/application/decisiones-service.js +0 -31
  194. package/dist/application/decisiones-service.js.map +0 -1
  195. package/dist/application/dev-bootstrap-dsn-service.js +0 -76
  196. package/dist/application/dev-bootstrap-dsn-service.js.map +0 -1
  197. package/dist/application/profile/profile-service.js +0 -199
  198. package/dist/application/profile/profile-service.js.map +0 -1
  199. package/dist/application/tasks-service.js +0 -45
  200. package/dist/application/tasks-service.js.map +0 -1
  201. package/dist/cli/commands/bootstrap-dsn.js +0 -16
  202. package/dist/cli/commands/bootstrap-dsn.js.map +0 -1
  203. package/dist/cli/tui/components/process-list.js +0 -43
  204. package/dist/cli/tui/components/process-list.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"durable-effect.js","sourceRoot":"","sources":["../../../src/application/capability/durable-effect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AA8BxD,MAAM,eAAe,GAA2B;IAC9C,gBAAgB;IAChB,kBAAkB;IAClB,SAAS;IACT,kBAAkB;IAClB,aAAa;CACd,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAAC,KAAgC;IACnE,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACvF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,+BAA+B;gBACrC,OAAO,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,oCAAoC;gBACxE,MAAM,EACJ,oFAAoF;aACvF;SACF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,0BAA0B;gBAChC,OAAO,EAAE,6CAA6C,KAAK,EAAE,KAAK,GAAG;gBACrE,MAAM,EAAE,yEAAyE;aAClF;SACF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EAAE,gDAAgD;gBACzD,MAAM,EAAE,uDAAuD;aAChE;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,EAAE,EAAE,IAAI;QACR,IAAI,EAAE;YACJ,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;YACpC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS;YAClC,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;YAC5C,sBAAsB,EAAE,KAAK,CAAC,OAAO,CAAC,sBAAsB;YAC5D,QAAQ,EAAE,YAAY,CAAC;gBACrB,SAAS,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;gBACnE,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACrC,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,SAAS,EAAE,CAAC,CAAC,SAAS,KAAK,IAAI;iBAChC,CAAC,CAAC;gBACH,KAAK,EAAE,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;gBAC7C,qEAAqE;gBACrE,uEAAuE;gBACvE,8CAA8C;gBAC9C,KAAK,EAAE;oBACL,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,KAAK,IAAI;oBAClE,cAAc,EAAE,KAAK;iBACtB;gBACD,OAAO,EAAE,OAAO;gBAChB,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC,cAAc;aACrD,CAAC;SACH;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"durable-effect.js","sourceRoot":"","sources":["../../../src/application/capability/durable-effect.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AA+BxD,MAAM,eAAe,GAA2B;IAC9C,gBAAgB;IAChB,kBAAkB;IAClB,SAAS;IACT,kBAAkB;IAClB,aAAa;CACd,CAAC;AAEF,MAAM,UAAU,oBAAoB,CAAC,KAAgC;IACnE,MAAM,OAAO,GAAG,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;IACvF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,+BAA+B;gBACrC,OAAO,EAAE,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,oCAAoC;gBACxE,MAAM,EACJ,oFAAoF;aACvF;SACF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC5C,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,0BAA0B;gBAChC,OAAO,EAAE,6CAA6C,KAAK,EAAE,KAAK,GAAG;gBACrE,MAAM,EAAE,yEAAyE;aAClF;SACF,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,EAAE,EAAE,KAAK;YACT,OAAO,EAAE;gBACP,IAAI,EAAE,yBAAyB;gBAC/B,OAAO,EAAE,gDAAgD;gBACzD,MAAM,EAAE,uDAAuD;aAChE;SACF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,EAAE,EAAE,IAAI;QACR,IAAI,EAAE;YACJ,UAAU,EAAE,KAAK,CAAC,OAAO,CAAC,UAAU;YACpC,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS;YAClC,cAAc,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;YAC5C,sBAAsB,EAAE,KAAK,CAAC,OAAO,CAAC,sBAAsB;YAC5D,QAAQ,EAAE,YAAY,CAAC;gBACrB,SAAS,EAAE,GAAG,KAAK,CAAC,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;gBACnE,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACrC,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,SAAS,EAAE,CAAC,CAAC,SAAS,KAAK,IAAI;iBAChC,CAAC,CAAC;gBACH,KAAK,EAAE,KAAK,CAAC,KAAK,IAAI,EAAE;gBACxB,qEAAqE;gBACrE,uEAAuE;gBACvE,8CAA8C;gBAC9C,KAAK,EAAE;oBACL,iBAAiB,EAAE,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,KAAK,IAAI;oBAClE,cAAc,EAAE,KAAK;iBACtB;gBACD,OAAO,EAAE,OAAO;gBAChB,gBAAgB,EAAE,KAAK,CAAC,aAAa,CAAC,cAAc;aACrD,CAAC;SACH;KACF,CAAC;AACJ,CAAC"}
@@ -192,6 +192,7 @@ async function unitsOf(git, paths, unitsRoot, source) {
192
192
  */
193
193
  async function flowSession(fs, paths, input) {
194
194
  const resolution = await resolveSessionTarget(fs, paths, {
195
+ intent: "read",
195
196
  ...(input.sessionCode !== undefined ? { code: input.sessionCode } : {}),
196
197
  ...(input.contextId !== undefined ? { contextId: input.contextId } : {}),
197
198
  bind: false,
@@ -1 +1 @@
1
- {"version":3,"file":"check-branch-service.js","sourceRoot":"","sources":["../../src/application/check-branch-service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,UAAU,EACV,YAAY,IAAI,cAAc,GAC/B,MAAM,6BAA6B,CAAC;AAIrC,OAAO,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAsB,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEpF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAyC7D,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,EAAkB,EAClB,GAAY,EACZ,GAAY,EACZ,KAAmB,EACnB,KAAuB;IAEvB,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,EAAE,CAAC;IACtB,MAAM,KAAK,GAAG,MAAM,kBAAkB,CAAC,EAAE,EAAE,GAAG,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IACtE,MAAM,OAAO,GAAG,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC;IACrC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC;IACxD,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC;IAC/D,CAAC;IAED,2EAA2E;IAC3E,4EAA4E;IAC5E,qDAAqD;IACrD,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC3D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACjE,CAAC;IAED,+EAA+E;IAC/E,+CAA+C;IAC/C,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,EAAE,KAAK,EAAE,gBAAgB,IAAI,EAAE,CAAC,CAAC;IAE3E,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,OAAO;YACL,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,6BAA6B;YACrC,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI,EAAE,MAAM,CAAC,IAAI;SAClB,CAAC;IACJ,CAAC;IAED,kBAAkB;IAClB,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACpC,OAAO;YACL,GAAG,MAAM;YACT,KAAK,EAAE,KAAK;YACZ,oBAAoB,EAAE,QAAQ;YAC9B,cAAc,EAAE,IAAI;YACpB,KAAK,EAAE,IAAI;YACX,aAAa,EAAE,EAAE;YACjB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,wBAAwB,MAAM,CAAC,IAAI,EAAE;YAC5C,YAAY,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;YACvC,WAAW,EAAE,QAAQ;SACtB,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACxC,OAAO;YACL,GAAG,MAAM;YACT,KAAK,EAAE,KAAK;YACZ,oBAAoB,EAAE,QAAQ;YAC9B,cAAc,EAAE,IAAI;YACpB,KAAK,EAAE,IAAI;YACX,aAAa,EAAE,EAAE;YACjB,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,sBAAsB;YAC7B,YAAY,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;YACvC,WAAW,EAAE,QAAQ;SACtB,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,CAAC,MAAM,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC;IAC/D,MAAM,KAAK,GAAG,OAAO,KAAK,QAAQ,CAAC;IACnC,OAAO;QACL,GAAG,MAAM;QACT,oBAAoB,EAAE,QAAQ;QAC9B,cAAc,EAAE,OAAO;QACvB,KAAK;QACL,GAAG,CAAC,MAAM,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;QACtC,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,IAAI;QACX,YAAY,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;QACvC,WAAW,EAAE,QAAQ;KACtB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,KAAK,UAAU,WAAW,CACxB,EAAkB,EAClB,KAAmB,EACnB,SAAiB,EACjB,MAAqB,EACrB,KAAgB,EAChB,KAAuB;IAEvB,MAAM,IAAI,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC;IACpD,MAAM,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC;IACxF,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAErD,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACjC,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,YAAY,EAAE,KAAK,CAAC,WAAW,IAAI,IAAI;YACvC,WAAW,EAAE,MAAM;YACnB,wEAAwE;YACxE,8BAA8B;YAC9B,aAAa,EAAE,IAAI;YACnB,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,kBAAkB;YAC1B,KAAK,EAAE,QAAQ,CAAC,MAAM;YACtB,WAAW,EAAE,MAAM,EAAE,MAAM,IAAI,IAAI;YACnC,MAAM,EAAE,QAAQ,CAAC,MAAM;SACxB,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,IAAI,IAAI,CAAC;IAClE,MAAM,IAAI,GAAG;QACX,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,YAAY,EAAE,OAAO;QACrB,WAAW,EAAE,MAAM;QACnB,aAAa,EAAE,QAAQ;KACxB,CAAC;IAEF,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,6EAA6E;QAC7E,0EAA0E;QAC1E,6EAA6E;QAC7E,IAAI,MAAM,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;YAC/B,OAAO;gBACL,GAAG,IAAI;gBACP,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,oBAAoB;gBAC5B,WAAW,EAAE,MAAM,CAAC,MAAM;gBAC1B,MAAM,EAAE,+BAA+B,MAAM,CAAC,KAAK,WAAW,OAAO,EAAE;aACxE,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;IACzF,CAAC;IAED,4EAA4E;IAC5E,MAAM,MAAM,GAAG,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;IAC5E,OAAO;QACL,GAAG,IAAI;QACP,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,cAAc;QACtB,aAAa,EAAE,MAAM;QACrB,WAAW,EAAE,MAAM,CAAC,MAAM;QAC1B,MAAM,EAAE,+BAA+B,MAAM,CAAC,KAAK,WAAW,OAAO,EAAE;KACxE,CAAC;AACJ,CAAC;AAED,6EAA6E;AAC7E,KAAK,UAAU,OAAO,CACpB,GAAY,EACZ,KAAmB,EACnB,SAAiB,EACjB,MAAqB;IAErB,IAAI,KAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,2EAA2E;QAC3E,4EAA4E;QAC5E,8BAA8B;QAC9B,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,GAAG,GAAG,KAAK,CAAC,YAAY,EAAE,CAAC;IACjC,MAAM,IAAI,GAAc,EAAE,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI;YAAE,SAAS;QACxB,MAAM,QAAQ,GAAG,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACrD,IAAI,QAAQ,KAAK,IAAI,IAAI,QAAQ,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK;YAAE,SAAS;QACnE,IAAI,QAAQ,CAAC,YAAY,KAAK,cAAc,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5D,IAAI,CAAC,IAAI,CAAC;YACR,OAAO,EAAE,QAAQ,CAAC,OAAO;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC;SACpD,CAAC,CAAC;IACL,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAOD;;;;;;;;;;;;GAYG;AACH,KAAK,UAAU,WAAW,CACxB,EAAkB,EAClB,KAAmB,EACnB,KAAuB;IAEvB,MAAM,UAAU,GAAG,MAAM,oBAAoB,CAAC,EAAE,EAAE,KAAK,EAAE;QACvD,GAAG,CAAC,KAAK,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvE,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACxE,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;IACH,IAAI,UAAU,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QACtC,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IAClE,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC;AACvF,CAAC;AAED,SAAS,OAAO,CAAC,OAAe,EAAE,KAAmB,EAAE,SAAiB,EAAE,KAAa;IACrF,OAAO;QACL,OAAO;QACP,IAAI,EAAE,GAAG,SAAS,IAAI,cAAc,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,IAAI,KAAK,IAAI,OAAO,EAAE;QAChF,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC;KAC5B,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,SAAS,CACtB,GAAY,EACZ,QAAgB;IAEhB,IAAI,OAAO,GAAa,EAAE,CAAC;IAC3B,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,GAAG,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,GAAG,EAAE,CAAC;IACf,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,aAAa,EAAE,OAAO,EAAE,CAAC;AAC/D,CAAC;AAED,SAAS,MAAM,CAAC,IAAY,EAAE,GAAW;IACvC,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,CAAC,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAC7B,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AAC1C,CAAC;AAED,SAAS,aAAa,CACpB,OAAwB,EACxB,KAAuB,EACvB,SAAiB;IAEjB,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;QAChB,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;IAC9D,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,CACL,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,OAAO,CAAC;YAC7C,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CACpD,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,OAAO,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"check-branch-service.js","sourceRoot":"","sources":["../../src/application/check-branch-service.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,9 @@
1
1
  import { join } from "node:path";
2
+ import { compareCorrelatives } from "../domain/correlative.js";
2
3
  import { resolveLifecycleTarget, unresolvedDetail, } from "./lifecycle-target.js";
3
4
  import { parseMdSection, parseMdSectionBilingual, parseMdValue } from "./markdown.js";
4
5
  import { listExistingArtifacts } from "./session-artifacts.js";
5
- import { CLOSED_MARKER, listSessionFolders, parseSessionFolder, resolveSessionTarget, sessionNumericCode, sessionReadRequest, } from "./session-resolver.js";
6
+ import { CLOSED_MARKER, listSessionFolders, resolveSessionTarget, sessionNumericCode, sessionReadRequest, } from "./session-resolver.js";
6
7
  /**
7
8
  * What an unfilled CHECKPOINT section still says.
8
9
  *
@@ -307,7 +308,7 @@ export async function findRecentClosedWithArtifacts(fs, paths, activeFolders, re
307
308
  for (const folder of folders) {
308
309
  if (activeSet.has(folder.name))
309
310
  continue;
310
- const { code } = parseSessionFolder(folder.name);
311
+ const code = sessionNumericCode(folder.name);
311
312
  if (code === null)
312
313
  continue;
313
314
  if (!(await fs.exists(join(folder.path, CLOSED_MARKER))))
@@ -335,7 +336,7 @@ export async function findRecentClosedWithArtifacts(fs, paths, activeFolders, re
335
336
  artifact_signal: signal,
336
337
  });
337
338
  }
338
- out.sort((a, b) => b.code.localeCompare(a.code));
339
+ out.sort((a, b) => compareCorrelatives(b.code, a.code) || a.folder.localeCompare(b.folder));
339
340
  return out;
340
341
  }
341
342
  function evaluateArtifactCompleteness(present) {
@@ -1 +1 @@
1
- {"version":3,"file":"checkpoint-service.js","sourceRoot":"","sources":["../../src/application/checkpoint-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checkpoint-service.js","sourceRoot":"","sources":["../../src/application/checkpoint-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,179 @@
1
+ /**
2
+ * The document a design revision repoints as part of the SAME publication.
3
+ *
4
+ * A package and the spec or plan that consumes its next baseline have to move
5
+ * together when the caller asks for that relationship. Keeping the parsing,
6
+ * compare-and-swap base, exact-reference check and manifest backreference here
7
+ * gives both the simple and package routes one interface instead of making
8
+ * either route remember half of an atomic publication.
9
+ */
10
+ import { join } from "node:path";
11
+ import { parseSpecDesignReferences } from "../../domain/design/reference.js";
12
+ import { DEFAULT_CORE_DOCS_CANON, coreDocumentKindForPath, coreDocumentLocations, } from "../../domain/docs-canon.js";
13
+ import { baseDigest } from "../../domain/proposal.js";
14
+ import { checkSafeRelativePath } from "../../domain/safe-path.js";
15
+ /**
16
+ * Read the optional attachment from the capability request without trusting
17
+ * its caller-provided provenance. The filesystem comparison happens later,
18
+ * against the candidate's workspace, but path/kind/seal shape is fixed here.
19
+ */
20
+ export function readConsumerDocument(input, canon = DEFAULT_CORE_DOCS_CANON) {
21
+ if (input === undefined)
22
+ return { ok: true, value: null };
23
+ const artifact = input.provenance.origin || "consumer_document";
24
+ if (input.provenance.kind !== "attachment") {
25
+ return failure("DESIGN_CONSUMER_INVALID", artifact, "'consumer_document' debe llegar como attachment", "pasá los bytes finales con provenance.kind = 'attachment'");
26
+ }
27
+ if (typeof input.value !== "string") {
28
+ return failure("DESIGN_CONSUMER_INVALID", artifact, "'consumer_document' debe contener los bytes de un documento Markdown", "pasá el contenido final de la spec o el plan como texto");
29
+ }
30
+ const safe = checkSafeRelativePath(input.provenance.origin);
31
+ if (!safe.ok) {
32
+ return failure("DESIGN_PATH_UNSAFE", artifact, `consumer_document: '${input.provenance.origin}' ${safe.why}`, "usá el path relativo de una spec o un plan dentro del workspace");
33
+ }
34
+ const kind = coreDocumentKindForPath(safe.path, canon);
35
+ if (kind === null) {
36
+ return failure("DESIGN_CONSUMER_PATH_INVALID", safe.path, `'consumer_document' sólo puede reemplazar una spec bajo ${canon.spec}/ o un plan bajo ${canon.plan}/`, `usá un archivo .md existente bajo ${coreDocumentLocations(canon)}/`);
37
+ }
38
+ const digest = input.provenance.seal;
39
+ if (!isBaseDigest(digest)) {
40
+ return failure("DESIGN_CONSUMER_BASE_INVALID", safe.path, "'consumer_document' necesita en provenance.seal el digest de la versión que reemplaza", "releé el documento consumidor y pasá su digest base sha256 en hex");
41
+ }
42
+ return {
43
+ ok: true,
44
+ value: { kind, path: safe.path, content: input.value, base: { path: safe.path, digest } },
45
+ };
46
+ }
47
+ /**
48
+ * Re-read the consumer before the candidate is accepted. A later re-read in
49
+ * `applyLocalProposal` is still necessary; this earlier check makes a stale
50
+ * attachment a candidate error rather than a surprising apply-time conflict.
51
+ */
52
+ export async function checkConsumerBase(fs, workspace, consumer) {
53
+ const absolute = join(workspace, consumer.path);
54
+ if (!(await fs.exists(absolute))) {
55
+ return {
56
+ code: "DESIGN_CONSUMER_BASE_GONE",
57
+ artifact: consumer.path,
58
+ message: `el documento consumidor '${consumer.path}' ya no existe`,
59
+ action: "releelo o publicalo primero antes de preparar esta revisión de diseño",
60
+ };
61
+ }
62
+ let current;
63
+ try {
64
+ current = await fs.readText(absolute);
65
+ }
66
+ catch {
67
+ return {
68
+ code: "DESIGN_CONSUMER_BASE_UNREADABLE",
69
+ artifact: consumer.path,
70
+ message: `no se pudo leer el documento consumidor '${consumer.path}'`,
71
+ action: "revisá el acceso al documento antes de preparar la publicación atómica",
72
+ };
73
+ }
74
+ if (baseDigest(current) !== consumer.base.digest) {
75
+ return {
76
+ code: "DESIGN_CONSUMER_BASE_STALE",
77
+ artifact: consumer.path,
78
+ message: `'${consumer.path}' cambió después de obtener el attachment`,
79
+ action: "releé el documento, actualizá sus bytes y prepará de nuevo la revisión",
80
+ };
81
+ }
82
+ return null;
83
+ }
84
+ /**
85
+ * Re-check the object at the candidate seam too. The handler is the normal
86
+ * caller, but `build*Proposal` is public and must not trust a typed object that
87
+ * arrived through a different adapter.
88
+ */
89
+ export function checkConsumerShape(consumer, canon = DEFAULT_CORE_DOCS_CANON) {
90
+ if (typeof consumer.path !== "string" || typeof consumer.content !== "string") {
91
+ return {
92
+ code: "DESIGN_CONSUMER_INVALID",
93
+ artifact: "consumer_document",
94
+ message: "el documento consumidor debe declarar path y bytes de texto",
95
+ action: "reconstruí el attachment desde la spec o el plan final",
96
+ };
97
+ }
98
+ const safe = checkSafeRelativePath(consumer.path);
99
+ if (!safe.ok) {
100
+ return {
101
+ code: "DESIGN_PATH_UNSAFE",
102
+ artifact: consumer.path,
103
+ message: `consumer_document: '${consumer.path}' ${safe.why}`,
104
+ action: `usá una ruta relativa segura bajo ${coreDocumentLocations(canon)}/`,
105
+ };
106
+ }
107
+ const kind = coreDocumentKindForPath(safe.path, canon);
108
+ if (kind === null ||
109
+ consumer.kind !== kind ||
110
+ typeof consumer.base !== "object" ||
111
+ consumer.base === null ||
112
+ typeof consumer.base.path !== "string" ||
113
+ consumer.base.path !== safe.path) {
114
+ return {
115
+ code: "DESIGN_CONSUMER_PATH_INVALID",
116
+ artifact: safe.path,
117
+ message: "el consumidor y su base deben señalar la misma spec o plan dentro del workspace",
118
+ action: `usá el mismo path seguro bajo ${coreDocumentLocations(canon)}/ para el attachment y su base`,
119
+ };
120
+ }
121
+ if (!isBaseDigest(consumer.base.digest)) {
122
+ return {
123
+ code: "DESIGN_CONSUMER_BASE_INVALID",
124
+ artifact: safe.path,
125
+ message: "la base del consumidor no tiene un digest sha256 hexadecimal válido",
126
+ action: "releé el documento consumidor y usá su digest base",
127
+ };
128
+ }
129
+ return null;
130
+ }
131
+ /**
132
+ * The consumer must pin THIS candidate, never an approximate or older revision.
133
+ * Other packages may legitimately appear in the same document, but every
134
+ * reference to the package being published has to agree with this baseline.
135
+ */
136
+ export function checkConsumerReference(consumer, baseline) {
137
+ const parsed = parseSpecDesignReferences(consumer.content, consumer.path);
138
+ const malformed = parsed.failures[0];
139
+ if (malformed !== undefined)
140
+ return malformed;
141
+ const references = parsed.references.filter((reference) => reference.baseline.package === baseline.package);
142
+ if (references.length === 0) {
143
+ return {
144
+ code: "DESIGN_CONSUMER_REFERENCE_MISSING",
145
+ artifact: consumer.path,
146
+ message: `'${consumer.path}' no fija el baseline ${baseline.package}@r${baseline.revision} que esta publicación acuña`,
147
+ action: "agregá la referencia exacta bajo '## Design references' antes de publicar",
148
+ };
149
+ }
150
+ const stale = references.find((reference) => reference.baseline.revision !== baseline.revision || reference.digest !== baseline.digest);
151
+ if (stale !== undefined) {
152
+ return {
153
+ code: "DESIGN_CONSUMER_REFERENCE_STALE",
154
+ artifact: consumer.path,
155
+ message: `'${consumer.path}' fija ${baseline.package}@r${stale.baseline.revision} con un digest que no corresponde al candidato`,
156
+ action: `actualizá la referencia a ${baseline.package}@r${baseline.revision} y ${baseline.digest}`,
157
+ };
158
+ }
159
+ return null;
160
+ }
161
+ /** Add the deterministic package → consumer backreference to a candidate manifest. */
162
+ export function withConsumerRelation(manifest, consumer) {
163
+ if (consumer === null || consumer === undefined)
164
+ return manifest;
165
+ const key = consumer.kind === "spec" ? "specs" : "plans";
166
+ const relations = {
167
+ ...manifest.relations,
168
+ [key]: [...new Set([...manifest.relations[key], consumer.path])].sort((a, b) => a.localeCompare(b)),
169
+ };
170
+ return { ...manifest, relations };
171
+ }
172
+ /** `ProposalBase` is sealed by `baseDigest`, which deliberately has no prefix. */
173
+ function isBaseDigest(value) {
174
+ return typeof value === "string" && /^[0-9a-f]{64}$/.test(value);
175
+ }
176
+ function failure(code, artifact, message, action) {
177
+ return { ok: false, failure: { code, artifact, message, action } };
178
+ }
179
+ //# sourceMappingURL=consumer-document.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"consumer-document.js","sourceRoot":"","sources":["../../../src/application/design/consumer-document.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,8 @@ import { computeClosure, notReadyForHandoff } from "../../domain/design/closure.
4
4
  import { judgeExecution, validateDesignReview, validateDesignRevocation, } from "../../domain/design/governance.js";
5
5
  import { parseSpecDesignReferences, parseTaskDesignReferences, } from "../../domain/design/reference.js";
6
6
  import { reportRetiredDesign } from "../../domain/design/retired.js";
7
+ import { DEFAULT_CORE_DOCS_CANON, coreDocumentKindForPath } from "../../domain/docs-canon.js";
8
+ import { checkSafeRelativePath } from "../../domain/safe-path.js";
7
9
  import { readDesignIndex } from "./design-index-service.js";
8
10
  import { resolveBaselineOnDisk, resolveStateAnchor, resolveTaskReference, staleHintNotice, } from "./design-resolver-service.js";
9
11
  /**
@@ -12,7 +14,22 @@ import { resolveBaselineOnDisk, resolveStateAnchor, resolveTaskReference, staleH
12
14
  */
13
15
  export async function gatePlanDesign(fs, workspace, planPath, policy = { requireApproval: false }) {
14
16
  const empty = { plan: planPath, declared: [], verdicts: [] };
15
- const absolute = join(workspace, planPath);
17
+ const safe = checkSafeRelativePath(planPath);
18
+ if (!safe.ok || coreDocumentKindForPath(safe.path, DEFAULT_CORE_DOCS_CANON) !== "plan") {
19
+ return {
20
+ ...empty,
21
+ blocked: true,
22
+ failures: [
23
+ {
24
+ code: "DESIGN_GATE_PLAN_OUTSIDE_CANON",
25
+ artifact: planPath,
26
+ message: `'${planPath}' no es un plan Markdown bajo ${DEFAULT_CORE_DOCS_CANON.plan}/`,
27
+ action: `pasá la ruta segura de un plan bajo ${DEFAULT_CORE_DOCS_CANON.plan}/`,
28
+ },
29
+ ],
30
+ };
31
+ }
32
+ const absolute = join(workspace, safe.path);
16
33
  if (!(await fs.exists(absolute))) {
17
34
  return {
18
35
  ...empty,
@@ -1 +1 @@
1
- {"version":3,"file":"design-gate-service.js","sourceRoot":"","sources":["../../../src/application/design/design-gate-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"design-gate-service.js","sourceRoot":"","sources":["../../../src/application/design/design-gate-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAuB,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAC9F,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpF,OAAO,EAGL,cAAc,EACd,oBAAoB,EACpB,wBAAwB,GACzB,MAAM,mCAAmC,CAAC;AAE3C,OAAO,EAGL,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC9F,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE,OAAO,EAAoB,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC9E,OAAO,EACL,qBAAqB,EACrB,kBAAkB,EAClB,oBAAoB,EACpB,eAAe,GAChB,MAAM,8BAA8B,CAAC;AAgDtC;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,EAAkB,EAClB,SAAiB,EACjB,QAAgB,EAChB,SAAyB,EAAE,eAAe,EAAE,KAAK,EAAE;IAEnD,MAAM,KAAK,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC7D,MAAM,IAAI,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC7C,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,uBAAuB,CAAC,IAAI,CAAC,IAAI,EAAE,uBAAuB,CAAC,KAAK,MAAM,EAAE,CAAC;QACvF,OAAO;YACL,GAAG,KAAK;YACR,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,gCAAgC;oBACtC,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,IAAI,QAAQ,iCAAiC,uBAAuB,CAAC,IAAI,GAAG;oBACrF,MAAM,EAAE,uCAAuC,uBAAuB,CAAC,IAAI,GAAG;iBAC/E;aACF;SACF,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACjC,OAAO;YACL,GAAG,KAAK;YACR,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,0BAA0B;oBAChC,QAAQ,EAAE,QAAQ;oBAClB,OAAO,EAAE,cAAc,QAAQ,GAAG;oBAClC,MAAM,EAAE,6CAA6C;iBACtD;aACF;SACF,CAAC;IACJ,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACzC,MAAM,QAAQ,GAAG,yBAAyB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC3D,4EAA4E;IAC5E,6EAA6E;IAC7E,gFAAgF;IAChF,MAAM,MAAM,GAAG,yBAAyB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACzD,yEAAyE;IACzE,8EAA8E;IAC9E,2CAA2C;IAC3C,MAAM,QAAQ,GAAG;QACf,GAAG,mBAAmB,CAAC,IAAI,EAAE,QAAQ,CAAC;QACtC,GAAG,QAAQ,CAAC,QAAQ;QACpB,GAAG,MAAM,CAAC,QAAQ;KACnB,CAAC;IAEF,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACnC,4EAA4E;QAC5E,2DAA2D;QAC3D,OAAO,EAAE,GAAG,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,QAAQ,EAAE,CAAC;IAC7F,CAAC;IAED,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAkB,EAAE,CAAC;IACnC,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;QAC1C,QAAQ,CAAC,IAAI,CACX,MAAM,cAAc,CAAC,SAAS,EAAE;YAC9B,EAAE;YACF,SAAS;YACT,KAAK;YACL,QAAQ;YACR,QAAQ;YACR,MAAM;YACN,QAAQ,EAAE,QAAQ,CAAC,UAAU;YAC7B,KAAK,EAAE,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,GAAG,EAAE,QAAQ,CAAC;SAC9C,CAAC,CACH,CAAC;IACJ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC9D,QAAQ,EAAE,QAAQ,CAAC,UAAU;QAC7B,QAAQ;QACR,QAAQ;KACT,CAAC;AACJ,CAAC;AAaD,kFAAkF;AAClF,KAAK,UAAU,cAAc,CAC3B,SAA8B,EAC9B,GAAiB;IAEjB,MAAM,IAAI,GAA+B;QACvC,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,GAAG,EAAE,SAAS,CAAC,GAAG;QAClB,OAAO,EAAE,EAAE;QACX,QAAQ,EAAE,EAAE;KACb,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,OAAsB,EAAe,EAAE,CAAC,CAAC;QACxD,GAAG,IAAI;QACP,KAAK,EAAE,KAAK;QACZ,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC;KACtC,CAAC,CAAC;IAEH,8CAA8C;IAC9C,wEAAwE;IACxE,0EAA0E;IAC1E,gCAAgC;IAChC,MAAM,QAAQ,GACZ,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,QAAQ,KAAK,GAAG,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC;IACxF,MAAM,QAAQ,GAAG,oBAAoB,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACpF,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEnD,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC5F,IAAI,CAAC,MAAM,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAE/C,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,SAAS,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC3F,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAEnD,MAAM,KAAK,GAAG,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;IACxD,IAAI,KAAK,KAAK,IAAI;QAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,OAAO,MAAM,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;IAE5E,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IACnE,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,OAAO,OAAO,CAAC;YACb,IAAI,EAAE,kCAAkC;YACxC,QAAQ;YACR,OAAO,EAAE,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,2CAA2C;YACjF,MAAM,EAAE,0DAA0D;SACnE,CAAC,CAAC;IACL,CAAC;IAED,0CAA0C;IAC1C,MAAM,WAAW,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,KAAK,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;IACpF,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzF,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QACxB,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;IACtF,CAAC;IAED,8CAA8C;IAC9C,EAAE;IACF,+EAA+E;IAC/E,2EAA2E;IAC3E,8EAA8E;IAC9E,2EAA2E;IAC3E,2EAA2E;IAC3E,gDAAgD;IAChD,IAAI,SAAS,CAAC,QAAQ,KAAK,IAAI;QAAE,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;IAEjE,MAAM,IAAI,GAAG,GAAG,SAAS,CAAC,QAAQ,CAAC,OAAO,IAAI,SAAS,CAAC,QAAQ,CAAC,QAAQ,KAAK,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;IAC5G,MAAM,OAAO,GAAG,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACrE,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;IACtF,CAAC;IACD,MAAM,OAAO,GAAG,kBAAkB,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC7D,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,OAAO,CAAC;YACb,IAAI,EAAE,2BAA2B;YACjC,QAAQ;YACR,OAAO,EAAE,kBAAkB,IAAI,YAAY,OAAO,CAAC,MAAM,4CAA4C,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC3I,MAAM,EACJ,4GAA4G;SAC/G,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,GAAG,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAClC,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,OAAO,CAAC,IAAY,EAAE,GAAW,EAAE,QAAgB;IAC1D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,KAAK,GAAkB,IAAI,CAAC;IAChC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,KAAK,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC;QACxC,4EAA4E;QAC5E,2EAA2E;QAC3E,0EAA0E;QAC1E,+DAA+D;QAC/D,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,SAAS,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,sBAAsB,CAAC;QAC3E,IAAI,SAAS;YAAE,SAAS;QACxB,MAAM,OAAO,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,OAAO,KAAK,IAAI;YAAE,KAAK,GAAG,OAAO,CAAC,CAAC,CAAW,CAAC;QACnD,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;YAAE,SAAS;QAClC,MAAM,IAAI,GAAG,mCAAmC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,IAAI,KAAK,IAAI;YAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAW,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;QAClF,IAAI,KAAK,KAAK,IAAI;YAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;QACxE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;IAC5D,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACxD,CAAC;AAQD;;;;;;;GAOG;AACH,MAAM,YAAY;IAIG;IACA;IACA;IALF,MAAM,GAAG,IAAI,GAAG,EAAgC,CAAC;IAElE,YACmB,EAAkB,EAClB,SAAiB,EACjB,KAAkB;QAFlB,OAAE,GAAF,EAAE,CAAgB;QAClB,cAAS,GAAT,SAAS,CAAQ;QACjB,UAAK,GAAL,KAAK,CAAa;IAClC,CAAC;IAEJ,KAAK,CAAC,IAAI,CAAC,EAAU;QACnB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACnC,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,MAAM,CAAC;QACxC,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAClC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC3B,OAAO,KAAK,CAAC;IACf,CAAC;IAEO,KAAK,CAAC,IAAI,CAAC,EAAU;QAC3B,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QACzD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,QAAQ,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QAC5D,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;QAE9B,MAAM,SAAS,GAAG,IAAI,GAAG,EAA0B,CAAC;QACpD,KAAK,MAAM,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI;YACxB,CAAC,OAAO,EAAE,MAAM,CAAC;YACjB,CAAC,SAAS,EAAE,QAAQ,CAAC;SACb,EAAE,CAAC;YACX,KAAK,MAAM,KAAK,IAAI,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC5D,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAAE,SAAS;gBAChD,MAAM,MAAM,GAAG,sBAAsB,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC1F,IAAI,MAAM,CAAC,EAAE,IAAI,MAAM,CAAC,KAAK,KAAK,IAAI;oBAAE,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QAED,OAAO;YACL,QAAQ;YACR,OAAO,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC;YACnD,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,IAAI;SAC5C,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACK,KAAK,CAAC,WAAW,CACvB,QAAwB,EACxB,WAAmB;QAEnB,MAAM,OAAO,GAAuB,EAAE,CAAC;QACvC,KAAK,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI;YAChC,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,oBAAoB,CAAC;YACnD,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,EAAE,wBAAwB,CAAC;SACnD,EAAE,CAAC;YACX,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAC/D,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAAE,SAAS;gBAChD,IAAI,MAAe,CAAC;gBACpB,IAAI,CAAC;oBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACxD,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;gBACD,uEAAuE;gBACvE,uEAAuE;gBACvE,oCAAoC;gBACpC,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;gBAChD,IAAI,UAAU,CAAC,EAAE,IAAI,UAAU,CAAC,KAAK,KAAK,IAAI;oBAAE,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACjF,CAAC;QACH,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
@@ -1,6 +1,7 @@
1
1
  import { join } from "node:path";
2
2
  import { DESIGNS_DIR, DESIGN_MANIFEST_FILE, validateDesignManifest, } from "../../domain/design/manifest.js";
3
3
  import { isRecord } from "../../domain/design/validation.js";
4
+ import { baseDigest } from "../../domain/proposal.js";
4
5
  export async function readDesignIndex(fs, workspace) {
5
6
  const rootAbs = join(workspace, DESIGNS_DIR);
6
7
  const index = { root: DESIGNS_DIR, packages: [], failures: [] };
@@ -53,6 +54,7 @@ async function readPackage(fs, rootAbs, folder) {
53
54
  title: null,
54
55
  path,
55
56
  manifest_path: manifestPath,
57
+ manifest_base: null,
56
58
  declared_id: null,
57
59
  current_baseline: null,
58
60
  manifest: null,
@@ -73,9 +75,11 @@ async function readPackage(fs, rootAbs, folder) {
73
75
  ],
74
76
  };
75
77
  }
78
+ let content;
76
79
  let parsed;
77
80
  try {
78
- parsed = JSON.parse(await fs.readText(manifestAbs));
81
+ content = await fs.readText(manifestAbs);
82
+ parsed = JSON.parse(content);
79
83
  }
80
84
  catch (err) {
81
85
  return {
@@ -90,12 +94,27 @@ async function readPackage(fs, rootAbs, folder) {
90
94
  ],
91
95
  };
92
96
  }
97
+ // This is deliberately derived from the SAME read whose bytes are parsed
98
+ // below. Re-reading here would turn a concurrent M1 -> M2 update into a
99
+ // proposal calculated from M1 but protected by M2, which is no CAS at all.
100
+ const manifestBase = { path: manifestPath, digest: baseDigest(content) };
93
101
  const declared = isRecord(parsed) && typeof parsed.id === "string" ? parsed.id : null;
94
102
  const validation = validateDesignManifest(parsed, manifestPath);
95
103
  if (!validation.ok || validation.value === null) {
96
- return { ...base, declared_id: declared, failures: validation.failures };
104
+ return {
105
+ ...base,
106
+ manifest_base: manifestBase,
107
+ declared_id: declared,
108
+ failures: validation.failures,
109
+ };
97
110
  }
98
- return { ...base, declared_id: declared, ...project(validation.value), ok: true };
111
+ return {
112
+ ...base,
113
+ manifest_base: manifestBase,
114
+ declared_id: declared,
115
+ ...project(validation.value),
116
+ ok: true,
117
+ };
99
118
  }
100
119
  function project(manifest) {
101
120
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"design-index-service.js","sourceRoot":"","sources":["../../../src/application/design/design-index-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAEL,WAAW,EACX,oBAAoB,EAGpB,sBAAsB,GACvB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAmD7D,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,EAAkB,EAAE,SAAiB;IACzE,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAC7C,MAAM,KAAK,GAAgB,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC7E,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAAE,OAAO,KAAK,CAAC;IAE9C,sEAAsE;IACtE,yEAAyE;IACzE,2DAA2D;IAC3D,MAAM,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAE/C,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9E,KAAK,CAAC,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,+EAA+E;AAC/E,MAAM,UAAU,oBAAoB,CAAC,KAAkB,EAAE,EAAU;IACjE,OAAO,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,IAAI,CAAC;AACzD,CAAC;AAED,wEAAwE;AACxE,KAAK,UAAU,OAAO,CACpB,EAAkB,EAClB,OAAe,EACf,QAAgB,EAChB,GAAyB;IAEzB,MAAM,IAAI,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACvE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,gEAAgE;QAChE,6EAA6E;QAC7E,4CAA4C;QAC5C,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK;YAAE,SAAS;QACnC,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;QAChF,IAAI,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,IAAI,CAAC,MAAM,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;YACjD,SAAS;QACX,CAAC;QACD,wEAAwE;QACxE,kEAAkE;QAClE,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QAC1B,MAAM,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QACxC,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,eAAe,CAAC,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;YACjF,GAAG,CAAC,IAAI,CAAC,MAAM,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,EAAkB,EAAE,GAAW;IAC5D,OAAO,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,EAAkB,EAClB,OAAe,EACf,MAAc;IAEd,MAAM,IAAI,GAAG,GAAG,WAAW,IAAI,MAAM,EAAE,CAAC;IACxC,MAAM,YAAY,GAAG,GAAG,IAAI,IAAI,oBAAoB,EAAE,CAAC;IACvD,MAAM,IAAI,GAAuB;QAC/B,EAAE,EAAE,IAAI;QACR,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,IAAI;QACX,IAAI;QACJ,aAAa,EAAE,YAAY;QAC3B,WAAW,EAAE,IAAI;QACjB,gBAAgB,EAAE,IAAI;QACtB,QAAQ,EAAE,IAAI;QACd,EAAE,EAAE,KAAK;QACT,QAAQ,EAAE,EAAE;KACb,CAAC;IAEF,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,oBAAoB,CAAC,CAAC;IAChE,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;QACpC,OAAO;YACL,GAAG,IAAI;YACP,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,yBAAyB;oBAC/B,QAAQ,EAAE,YAAY;oBACtB,OAAO,EAAE,IAAI,IAAI,eAAe,WAAW,gBAAgB,oBAAoB,EAAE;oBACjF,MAAM,EAAE,uCAAuC,WAAW,uBAAuB;iBAClF;aACF;SACF,CAAC;IACJ,CAAC;IAED,IAAI,MAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,GAAG,IAAI;YACP,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,4BAA4B;oBAClC,QAAQ,EAAE,YAAY;oBACtB,OAAO,EAAE,gCAAgC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;oBAC3F,MAAM,EAAE,2CAA2C;iBACpD;aACF;SACF,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IACtF,MAAM,UAAU,GAAG,sBAAsB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAChE,IAAI,CAAC,UAAU,CAAC,EAAE,IAAI,UAAU,CAAC,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,OAAO,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC;IAC3E,CAAC;IACD,OAAO,EAAE,GAAG,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACpF,CAAC;AAED,SAAS,OAAO,CACd,QAAwB;IAExB,OAAO;QACL,EAAE,EAAE,QAAQ,CAAC,EAAE;QACf,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,gBAAgB,EAAE,QAAQ,CAAC,gBAAgB;QAC3C,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,gBAAgB,CAAC,QAA8B;IACtD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAoB,CAAC;IACzC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,GAAG,CAAC,EAAE,KAAK,IAAI;YAAE,SAAS;QAC9B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IAC5D,CAAC;IACD,MAAM,QAAQ,GAAoB,EAAE,CAAC;IACrC,KAAK,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,SAAS;QAC/B,QAAQ,CAAC,IAAI,CAAC;YACZ,IAAI,EAAE,qBAAqB;YAC3B,QAAQ,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1B,OAAO,EAAE,GAAG,EAAE,uBAAuB,KAAK,CAAC,MAAM,WAAW;YAC5D,MAAM,EAAE,sEAAsE;SAC/E,CAAC,CAAC;IACL,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"design-index-service.js","sourceRoot":"","sources":["../../../src/application/design/design-index-service.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ import { validateDesignRendition } from "../../domain/design/rendition.js";
14
14
  import { KIND_LIST } from "../../domain/design/revision.js";
15
15
  import { crossVisualEvidence } from "../../domain/design/visual-evidence.js";
16
16
  import { checkSafeRelativePath } from "../../domain/safe-path.js";
17
+ import { checkConsumerBase, checkConsumerReference, checkConsumerShape, withConsumerRelation, } from "./consumer-document.js";
17
18
  /**
18
19
  * The whole candidate of a package revision — merged catalog, sealed baseline,
19
20
  * derived manifest, projections — validated BEFORE anything is written, and
@@ -28,6 +29,15 @@ export async function buildPackageCandidate(fs, workspace, input) {
28
29
  const unsafe = input.files.flatMap((f) => pathFailure(f.path));
29
30
  if (unsafe.length > 0)
30
31
  return { ok: false, failures: unsafe };
32
+ const consumer = input.consumer_document ?? null;
33
+ if (consumer !== null) {
34
+ const shape = checkConsumerShape(consumer, input.docs_canon);
35
+ if (shape !== null)
36
+ return { ok: false, failures: [shape] };
37
+ const consumerBase = await checkConsumerBase(fs, workspace, consumer);
38
+ if (consumerBase !== null)
39
+ return { ok: false, failures: [consumerBase] };
40
+ }
31
41
  const catalog = mergeCatalog(input.manifest, input.files, input.dataAuthorization);
32
42
  if ("failures" in catalog)
33
43
  return { ok: false, failures: catalog.failures };
@@ -63,14 +73,19 @@ export async function buildPackageCandidate(fs, workspace, input) {
63
73
  if ("failures" in selection)
64
74
  return { ok: false, failures: selection.failures };
65
75
  const baseline = sealBaseline(input.manifest, revision, input.published, selection.value);
66
- const nextManifest = nextManifestOf(input.manifest, catalog.value, baseline);
76
+ const nextManifest = nextManifestOf(input.manifest, catalog.value, baseline, consumer);
77
+ if (consumer !== null) {
78
+ const reference = checkConsumerReference(consumer, baseline);
79
+ if (reference !== null)
80
+ return { ok: false, failures: [reference] };
81
+ }
67
82
  const failures = validateCandidate(nextManifest, baseline, input.packagePath);
68
83
  if (failures.length > 0)
69
84
  return { ok: false, failures };
70
85
  return {
71
86
  ok: true,
72
87
  value: {
73
- artifacts: candidateArtifacts(input.packagePath, nextManifest, baseline, input.files),
88
+ artifacts: candidateArtifacts(input.packagePath, nextManifest, baseline, input.files, consumer),
74
89
  revision,
75
90
  baseline,
76
91
  manifest: nextManifest,
@@ -617,9 +632,9 @@ function sealBaseline(manifest, revision, published, selection) {
617
632
  };
618
633
  return { ...sealed, digest: computeBaselineDigest(sealed) };
619
634
  }
620
- function nextManifestOf(manifest, catalog, baseline) {
635
+ function nextManifestOf(manifest, catalog, baseline, consumer) {
621
636
  const path = baselinePath(manifest.id, baseline.revision);
622
- return {
637
+ return withConsumerRelation({
623
638
  ...manifest,
624
639
  catalog,
625
640
  currentness: deriveCurrentness(manifest.id, catalog),
@@ -634,7 +649,7 @@ function nextManifestOf(manifest, catalog, baseline) {
634
649
  },
635
650
  ],
636
651
  current_baseline: { revision: baseline.revision, path, digest: baseline.digest },
637
- };
652
+ }, consumer);
638
653
  }
639
654
  /**
640
655
  * Currentness is DERIVED, never authored: the highest revision of each artifact
@@ -681,7 +696,7 @@ function validateCandidate(after, baseline, packagePath) {
681
696
  * a concurrent publication must lose the race, not overwrite an immutable
682
697
  * revision. The index and the projections are meant to be rewritten.
683
698
  */
684
- function candidateArtifacts(packagePath, manifest, baseline, files) {
699
+ function candidateArtifacts(packagePath, manifest, baseline, files, consumer) {
685
700
  const at = (path) => `${packagePath}/${path}`;
686
701
  return [
687
702
  ...files.map((f) => ({ path: at(f.path), content: f.content, overwrite: false })),
@@ -710,6 +725,12 @@ function candidateArtifacts(packagePath, manifest, baseline, files) {
710
725
  content: `${JSON.stringify(manifest, null, 2)}\n`,
711
726
  overwrite: true,
712
727
  },
728
+ // The package must be complete and point at its new baseline before its
729
+ // consumer moves. `publishArtifacts` rolls the whole batch back if this
730
+ // final overwrite fails.
731
+ ...(consumer === null
732
+ ? []
733
+ : [{ path: consumer.path, content: consumer.content, overwrite: true }]),
713
734
  ];
714
735
  }
715
736
  //# sourceMappingURL=design-publish-service.js.map