@lumenflow/core 2.18.3 → 2.20.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 (215) hide show
  1. package/dist/adapters/terminal-renderer.adapter.d.ts.map +1 -1
  2. package/dist/adapters/terminal-renderer.adapter.js +6 -4
  3. package/dist/adapters/terminal-renderer.adapter.js.map +1 -1
  4. package/dist/arg-parser.js +2 -2
  5. package/dist/arg-parser.js.map +1 -1
  6. package/dist/atomic-merge.d.ts +21 -0
  7. package/dist/atomic-merge.d.ts.map +1 -0
  8. package/dist/atomic-merge.js +83 -0
  9. package/dist/atomic-merge.js.map +1 -0
  10. package/dist/context/wu-state-reader.d.ts +2 -0
  11. package/dist/context/wu-state-reader.d.ts.map +1 -1
  12. package/dist/context/wu-state-reader.js +3 -0
  13. package/dist/context/wu-state-reader.js.map +1 -1
  14. package/dist/delegation-escalation.d.ts +91 -0
  15. package/dist/delegation-escalation.d.ts.map +1 -0
  16. package/dist/delegation-escalation.js +258 -0
  17. package/dist/delegation-escalation.js.map +1 -0
  18. package/dist/delegation-monitor.d.ts +230 -0
  19. package/dist/delegation-monitor.d.ts.map +1 -0
  20. package/dist/delegation-monitor.js +675 -0
  21. package/dist/delegation-monitor.js.map +1 -0
  22. package/dist/delegation-recovery.d.ts +83 -0
  23. package/dist/delegation-recovery.d.ts.map +1 -0
  24. package/dist/delegation-recovery.js +299 -0
  25. package/dist/delegation-recovery.js.map +1 -0
  26. package/dist/delegation-registry-schema.d.ts +80 -0
  27. package/dist/delegation-registry-schema.d.ts.map +1 -0
  28. package/dist/delegation-registry-schema.js +91 -0
  29. package/dist/delegation-registry-schema.js.map +1 -0
  30. package/dist/delegation-registry-store.d.ts +159 -0
  31. package/dist/delegation-registry-store.d.ts.map +1 -0
  32. package/dist/delegation-registry-store.js +299 -0
  33. package/dist/delegation-registry-store.js.map +1 -0
  34. package/dist/delegation-tree.d.ts +57 -0
  35. package/dist/delegation-tree.d.ts.map +1 -0
  36. package/dist/delegation-tree.js +203 -0
  37. package/dist/delegation-tree.js.map +1 -0
  38. package/dist/gates-agent-mode.d.ts +25 -0
  39. package/dist/gates-agent-mode.d.ts.map +1 -1
  40. package/dist/gates-agent-mode.js +41 -0
  41. package/dist/gates-agent-mode.js.map +1 -1
  42. package/dist/index.d.ts +16 -7
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +20 -9
  45. package/dist/index.js.map +1 -1
  46. package/dist/lumenflow-config-schema.d.ts +9 -3
  47. package/dist/lumenflow-config-schema.d.ts.map +1 -1
  48. package/dist/lumenflow-config-schema.js +19 -4
  49. package/dist/lumenflow-config-schema.js.map +1 -1
  50. package/dist/lumenflow-config.d.ts +2 -0
  51. package/dist/lumenflow-config.d.ts.map +1 -1
  52. package/dist/lumenflow-config.js +1 -0
  53. package/dist/lumenflow-config.js.map +1 -1
  54. package/dist/micro-worktree.d.ts.map +1 -1
  55. package/dist/micro-worktree.js +15 -9
  56. package/dist/micro-worktree.js.map +1 -1
  57. package/dist/rollback-utils.d.ts +52 -0
  58. package/dist/rollback-utils.d.ts.map +1 -1
  59. package/dist/rollback-utils.js +111 -0
  60. package/dist/rollback-utils.js.map +1 -1
  61. package/dist/sandbox-allowlist.d.ts +16 -0
  62. package/dist/sandbox-allowlist.d.ts.map +1 -0
  63. package/dist/sandbox-allowlist.js +75 -0
  64. package/dist/sandbox-allowlist.js.map +1 -0
  65. package/dist/sandbox-backend-linux.d.ts +6 -0
  66. package/dist/sandbox-backend-linux.d.ts.map +1 -0
  67. package/dist/sandbox-backend-linux.js +65 -0
  68. package/dist/sandbox-backend-linux.js.map +1 -0
  69. package/dist/sandbox-backend-macos.d.ts +6 -0
  70. package/dist/sandbox-backend-macos.d.ts.map +1 -0
  71. package/dist/sandbox-backend-macos.js +64 -0
  72. package/dist/sandbox-backend-macos.js.map +1 -0
  73. package/dist/sandbox-backend-windows.d.ts +6 -0
  74. package/dist/sandbox-backend-windows.d.ts.map +1 -0
  75. package/dist/sandbox-backend-windows.js +28 -0
  76. package/dist/sandbox-backend-windows.js.map +1 -0
  77. package/dist/sandbox-profile.d.ts +53 -0
  78. package/dist/sandbox-profile.d.ts.map +1 -0
  79. package/dist/sandbox-profile.js +62 -0
  80. package/dist/sandbox-profile.js.map +1 -0
  81. package/dist/schemas/index.d.ts +3 -3
  82. package/dist/schemas/index.d.ts.map +1 -1
  83. package/dist/schemas/index.js +6 -6
  84. package/dist/schemas/index.js.map +1 -1
  85. package/dist/schemas/initiative-arg-validators.d.ts +1 -0
  86. package/dist/schemas/initiative-arg-validators.d.ts.map +1 -1
  87. package/dist/schemas/initiative-schemas.d.ts +3 -1
  88. package/dist/schemas/initiative-schemas.d.ts.map +1 -1
  89. package/dist/schemas/initiative-schemas.js +2 -1
  90. package/dist/schemas/initiative-schemas.js.map +1 -1
  91. package/dist/schemas/setup-arg-validators.d.ts +4 -4
  92. package/dist/schemas/setup-arg-validators.d.ts.map +1 -1
  93. package/dist/schemas/setup-arg-validators.js +6 -6
  94. package/dist/schemas/setup-arg-validators.js.map +1 -1
  95. package/dist/schemas/setup-schemas.d.ts +7 -7
  96. package/dist/schemas/setup-schemas.d.ts.map +1 -1
  97. package/dist/schemas/setup-schemas.js +11 -11
  98. package/dist/schemas/setup-schemas.js.map +1 -1
  99. package/dist/schemas/wu-lifecycle-arg-validators.d.ts +2 -1
  100. package/dist/schemas/wu-lifecycle-arg-validators.d.ts.map +1 -1
  101. package/dist/schemas/wu-lifecycle-schemas.d.ts +5 -3
  102. package/dist/schemas/wu-lifecycle-schemas.d.ts.map +1 -1
  103. package/dist/schemas/wu-lifecycle-schemas.js +6 -2
  104. package/dist/schemas/wu-lifecycle-schemas.js.map +1 -1
  105. package/dist/spawn-strategy.d.ts +1 -1
  106. package/dist/spawn-strategy.js +1 -1
  107. package/dist/template-loader.d.ts +7 -3
  108. package/dist/template-loader.d.ts.map +1 -1
  109. package/dist/template-loader.js +22 -6
  110. package/dist/template-loader.js.map +1 -1
  111. package/dist/validation/types.d.ts +2 -0
  112. package/dist/validation/types.d.ts.map +1 -1
  113. package/dist/wu-consistency-checker.d.ts +1 -0
  114. package/dist/wu-consistency-checker.d.ts.map +1 -1
  115. package/dist/wu-consistency-checker.js +31 -2
  116. package/dist/wu-consistency-checker.js.map +1 -1
  117. package/dist/wu-context-constants.d.ts +4 -2
  118. package/dist/wu-context-constants.d.ts.map +1 -1
  119. package/dist/wu-context-constants.js +4 -2
  120. package/dist/wu-context-constants.js.map +1 -1
  121. package/dist/wu-done-branch-only.d.ts +2 -11
  122. package/dist/wu-done-branch-only.d.ts.map +1 -1
  123. package/dist/wu-done-branch-only.js +81 -45
  124. package/dist/wu-done-branch-only.js.map +1 -1
  125. package/dist/wu-done-cleanup.js +33 -1
  126. package/dist/wu-done-cleanup.js.map +1 -1
  127. package/dist/wu-done-initiative-sync.d.ts.map +1 -1
  128. package/dist/wu-done-initiative-sync.js +20 -5
  129. package/dist/wu-done-initiative-sync.js.map +1 -1
  130. package/dist/wu-done-machine.d.ts +175 -0
  131. package/dist/wu-done-machine.d.ts.map +1 -0
  132. package/dist/wu-done-machine.js +225 -0
  133. package/dist/wu-done-machine.js.map +1 -0
  134. package/dist/wu-done-metadata.d.ts.map +1 -1
  135. package/dist/wu-done-metadata.js +3 -1
  136. package/dist/wu-done-metadata.js.map +1 -1
  137. package/dist/wu-done-preflight.d.ts +8 -0
  138. package/dist/wu-done-preflight.d.ts.map +1 -1
  139. package/dist/wu-done-preflight.js +17 -1
  140. package/dist/wu-done-preflight.js.map +1 -1
  141. package/dist/wu-done-validation.d.ts +0 -37
  142. package/dist/wu-done-validation.d.ts.map +1 -1
  143. package/dist/wu-done-validation.js +1 -155
  144. package/dist/wu-done-validation.js.map +1 -1
  145. package/dist/wu-done-validators.d.ts +1 -2
  146. package/dist/wu-done-validators.d.ts.map +1 -1
  147. package/dist/wu-done-validators.js +1 -3
  148. package/dist/wu-done-validators.js.map +1 -1
  149. package/dist/wu-done-worktree-services.d.ts +191 -0
  150. package/dist/wu-done-worktree-services.d.ts.map +1 -0
  151. package/dist/wu-done-worktree-services.js +273 -0
  152. package/dist/wu-done-worktree-services.js.map +1 -0
  153. package/dist/wu-done-worktree.d.ts +0 -19
  154. package/dist/wu-done-worktree.d.ts.map +1 -1
  155. package/dist/wu-done-worktree.js +165 -118
  156. package/dist/wu-done-worktree.js.map +1 -1
  157. package/dist/wu-git-constants.d.ts +4 -0
  158. package/dist/wu-git-constants.d.ts.map +1 -1
  159. package/dist/wu-git-constants.js +4 -0
  160. package/dist/wu-git-constants.js.map +1 -1
  161. package/dist/wu-helpers.d.ts +5 -1
  162. package/dist/wu-helpers.d.ts.map +1 -1
  163. package/dist/wu-helpers.js +5 -1
  164. package/dist/wu-helpers.js.map +1 -1
  165. package/dist/wu-lint.d.ts +53 -37
  166. package/dist/wu-lint.d.ts.map +1 -1
  167. package/dist/wu-lint.js +95 -105
  168. package/dist/wu-lint.js.map +1 -1
  169. package/dist/wu-paths-constants.d.ts +3 -3
  170. package/dist/wu-paths-constants.d.ts.map +1 -1
  171. package/dist/wu-paths-constants.js +3 -3
  172. package/dist/wu-paths-constants.js.map +1 -1
  173. package/dist/wu-preflight-validators.d.ts +28 -77
  174. package/dist/wu-preflight-validators.d.ts.map +1 -1
  175. package/dist/wu-preflight-validators.js +86 -130
  176. package/dist/wu-preflight-validators.js.map +1 -1
  177. package/dist/wu-recovery.d.ts +89 -0
  178. package/dist/wu-recovery.d.ts.map +1 -1
  179. package/dist/wu-recovery.js +118 -0
  180. package/dist/wu-recovery.js.map +1 -1
  181. package/dist/wu-rules-core.d.ts +95 -0
  182. package/dist/wu-rules-core.d.ts.map +1 -0
  183. package/dist/wu-rules-core.js +399 -0
  184. package/dist/wu-rules-core.js.map +1 -0
  185. package/dist/wu-rules-engine.d.ts +29 -0
  186. package/dist/wu-rules-engine.d.ts.map +1 -0
  187. package/dist/wu-rules-engine.js +59 -0
  188. package/dist/wu-rules-engine.js.map +1 -0
  189. package/dist/wu-rules-resolvers.d.ts +19 -0
  190. package/dist/wu-rules-resolvers.d.ts.map +1 -0
  191. package/dist/wu-rules-resolvers.js +208 -0
  192. package/dist/wu-rules-resolvers.js.map +1 -0
  193. package/dist/wu-schema.d.ts +24 -9
  194. package/dist/wu-schema.d.ts.map +1 -1
  195. package/dist/wu-schema.js +14 -1
  196. package/dist/wu-schema.js.map +1 -1
  197. package/dist/wu-spawn-context.d.ts +1 -1
  198. package/dist/wu-spawn-context.d.ts.map +1 -1
  199. package/dist/wu-spawn-context.js +8 -2
  200. package/dist/wu-spawn-context.js.map +1 -1
  201. package/dist/wu-spawn-helpers.js +2 -2
  202. package/dist/wu-spawn-helpers.js.map +1 -1
  203. package/dist/wu-state-schema.d.ts +12 -12
  204. package/dist/wu-state-schema.d.ts.map +1 -1
  205. package/dist/wu-state-schema.js +10 -10
  206. package/dist/wu-state-schema.js.map +1 -1
  207. package/dist/wu-state-store.d.ts +10 -4
  208. package/dist/wu-state-store.d.ts.map +1 -1
  209. package/dist/wu-state-store.js +309 -11
  210. package/dist/wu-state-store.js.map +1 -1
  211. package/dist/wu-transaction.d.ts +21 -0
  212. package/dist/wu-transaction.d.ts.map +1 -1
  213. package/dist/wu-transaction.js +17 -0
  214. package/dist/wu-transaction.js.map +1 -1
  215. package/package.json +14 -11
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wu-rules-core.js","sourceRoot":"","sources":["../src/wu-rules-core.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ import { type ValidationIssue, validateWURulesSync, type ValidationPhase, type WUValidationContextInput, type WUValidationResult } from './wu-rules-core.js';
2
+ export * from './wu-rules-core.js';
3
+ export { pathReferenceExistsSync, pathReferenceExists, resolveBaseRef, resolveChangedFiles, resolveCliBinDiff, createDefaultWURuleResolvers, } from './wu-rules-resolvers.js';
4
+ export interface NormalizedValidationIssue {
5
+ code: string;
6
+ type: string;
7
+ severity: 'error' | 'warning';
8
+ wuId?: string;
9
+ message: string;
10
+ suggestion: string;
11
+ details: string[];
12
+ }
13
+ export interface NormalizeValidationIssueOptions {
14
+ wuId?: string;
15
+ typeByCode?: Record<string, string>;
16
+ }
17
+ export declare function normalizeValidationIssue(issue: ValidationIssue, options?: NormalizeValidationIssueOptions): NormalizedValidationIssue;
18
+ export declare function validationIssueToDisplayLines(issue: ValidationIssue): string[];
19
+ /**
20
+ * Backward-compatible facade for the shared WU rules engine.
21
+ *
22
+ * Reality-phase validation is resolved via explicit git/fs adapters
23
+ * from wu-rules-resolvers so rule evaluation in wu-rules-core stays pure.
24
+ */
25
+ export declare function validateWURules(input: WUValidationContextInput, options?: {
26
+ phase?: ValidationPhase;
27
+ }): Promise<WUValidationResult>;
28
+ export { validateWURulesSync };
29
+ //# sourceMappingURL=wu-rules-engine.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wu-rules-engine.d.ts","sourceRoot":"","sources":["../src/wu-rules-engine.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,eAAe,EACpB,mBAAmB,EAEnB,KAAK,eAAe,EACpB,KAAK,wBAAwB,EAC7B,KAAK,kBAAkB,EACxB,MAAM,oBAAoB,CAAC;AAG5B,cAAc,oBAAoB,CAAC;AACnC,OAAO,EACL,uBAAuB,EACvB,mBAAmB,EACnB,cAAc,EACd,mBAAmB,EACnB,iBAAiB,EACjB,4BAA4B,GAC7B,MAAM,yBAAyB,CAAC;AAEjC,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,+BAA+B;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACrC;AAmCD,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,eAAe,EACtB,OAAO,GAAE,+BAAoC,GAC5C,yBAAyB,CAY3B;AAED,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM,EAAE,CAG9E;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,wBAAwB,EAC/B,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,eAAe,CAAA;CAAO,GACxC,OAAO,CAAC,kBAAkB,CAAC,CAE7B;AAED,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { RULE_CODES, validateWURulesSync, validateWURulesWithResolvers, } from './wu-rules-core.js';
2
+ import { createDefaultWURuleResolvers } from './wu-rules-resolvers.js';
3
+ export * from './wu-rules-core.js';
4
+ export { pathReferenceExistsSync, pathReferenceExists, resolveBaseRef, resolveChangedFiles, resolveCliBinDiff, createDefaultWURuleResolvers, } from './wu-rules-resolvers.js';
5
+ function extractValidationIssueDetails(issue) {
6
+ if (!issue.metadata || typeof issue.metadata !== 'object') {
7
+ return [];
8
+ }
9
+ const metadata = issue.metadata;
10
+ const details = [];
11
+ const missingCodePaths = metadata.missingCodePaths;
12
+ if (Array.isArray(missingCodePaths) && missingCodePaths.length > 0) {
13
+ details.push(...missingCodePaths.map((entry) => ` - ${entry}`));
14
+ }
15
+ const missingTestPaths = metadata.missingTestPaths;
16
+ if (Array.isArray(missingTestPaths) && missingTestPaths.length > 0) {
17
+ details.push(...missingTestPaths.map((entry) => ` - ${entry}`));
18
+ }
19
+ if (issue.code === RULE_CODES.CODE_PATH_COVERAGE) {
20
+ const changedFiles = metadata.changedFiles;
21
+ if (Array.isArray(changedFiles)) {
22
+ details.push('Changed files considered:');
23
+ if (changedFiles.length === 0) {
24
+ details.push(' - (none)');
25
+ }
26
+ else {
27
+ details.push(...changedFiles.map((entry) => ` - ${entry}`));
28
+ }
29
+ }
30
+ }
31
+ return details;
32
+ }
33
+ export function normalizeValidationIssue(issue, options = {}) {
34
+ const mappedType = options.typeByCode?.[issue.code] ?? issue.code;
35
+ return {
36
+ code: issue.code,
37
+ type: mappedType,
38
+ severity: issue.severity,
39
+ wuId: options.wuId,
40
+ message: issue.message,
41
+ suggestion: issue.suggestion,
42
+ details: extractValidationIssueDetails(issue),
43
+ };
44
+ }
45
+ export function validationIssueToDisplayLines(issue) {
46
+ const normalized = normalizeValidationIssue(issue);
47
+ return [normalized.message, ...normalized.details];
48
+ }
49
+ /**
50
+ * Backward-compatible facade for the shared WU rules engine.
51
+ *
52
+ * Reality-phase validation is resolved via explicit git/fs adapters
53
+ * from wu-rules-resolvers so rule evaluation in wu-rules-core stays pure.
54
+ */
55
+ export async function validateWURules(input, options = {}) {
56
+ return validateWURulesWithResolvers(input, options, createDefaultWURuleResolvers());
57
+ }
58
+ export { validateWURulesSync };
59
+ //# sourceMappingURL=wu-rules-engine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wu-rules-engine.js","sourceRoot":"","sources":["../src/wu-rules-engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { type CliBinDiffResult, type ResolveChangedFilesResult, type WURuleResolvers } from './wu-rules-core.js';
2
+ export declare function pathReferenceExistsSync(reference: string, cwd: string): boolean;
3
+ export declare function pathReferenceExists(reference: string, cwd: string): Promise<boolean>;
4
+ export declare function resolveBaseRef(options: {
5
+ cwd: string;
6
+ baseRef?: string;
7
+ }): Promise<string | null>;
8
+ export declare function resolveChangedFiles(options: {
9
+ cwd: string;
10
+ baseRef?: string;
11
+ headRef?: string;
12
+ }): Promise<ResolveChangedFilesResult>;
13
+ export declare function resolveCliBinDiff(options: {
14
+ cwd: string;
15
+ baseRef?: string;
16
+ headRef?: string;
17
+ }): Promise<CliBinDiffResult>;
18
+ export declare function createDefaultWURuleResolvers(): WURuleResolvers;
19
+ //# sourceMappingURL=wu-rules-resolvers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wu-rules-resolvers.d.ts","sourceRoot":"","sources":["../src/wu-rules-resolvers.ts"],"names":[],"mappings":"AAKA,OAAO,EAIL,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,eAAe,EACrB,MAAM,oBAAoB,CAAC;AA4E5B,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAa/E;AAED,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAa1F;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAiBzB;AAED,wBAAsB,mBAAmB,CAAC,OAAO,EAAE;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,yBAAyB,CAAC,CA4BrC;AAED,wBAAsB,iBAAiB,CAAC,OAAO,EAAE;IAC/C,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAgF5B;AAED,wBAAgB,4BAA4B,IAAI,eAAe,CAM9D"}
@@ -0,0 +1,208 @@
1
+ import { existsSync } from 'node:fs';
2
+ import path from 'node:path';
3
+ import { isDeepStrictEqual } from 'node:util';
4
+ import fg from 'fast-glob';
5
+ import { createGitForPath } from './git-adapter.js';
6
+ import { CLI_PACKAGE_JSON_PATH, hasGlobPattern, normalizePathForCoverage, } from './wu-rules-core.js';
7
+ const DEFAULT_HEAD_REF = 'HEAD';
8
+ const BASE_REF_CANDIDATES = ['origin/main', 'main'];
9
+ const BASE_REF_UNAVAILABLE_REASON = `Unable to resolve git base ref (tried ${BASE_REF_CANDIDATES.join(', ')}).`;
10
+ const PATH_NOT_FOUND_PATTERNS = [
11
+ /does not exist in/i,
12
+ /exists on disk, but not in/i,
13
+ /path .* not in/i,
14
+ /unknown revision or path/i,
15
+ /fatal: path /i,
16
+ ];
17
+ function getGlobOptions(cwd) {
18
+ return {
19
+ cwd,
20
+ dot: true,
21
+ onlyFiles: false,
22
+ unique: true,
23
+ };
24
+ }
25
+ function toErrorMessage(error) {
26
+ if (error instanceof Error) {
27
+ return error.message;
28
+ }
29
+ return String(error);
30
+ }
31
+ function splitLines(output) {
32
+ return output
33
+ .split('\n')
34
+ .map((line) => line.trim())
35
+ .filter(Boolean);
36
+ }
37
+ function matchesAnyNotFoundPattern(message) {
38
+ return PATH_NOT_FOUND_PATTERNS.some((pattern) => pattern.test(message));
39
+ }
40
+ async function readJsonFileAtRef(options) {
41
+ const git = createGitForPath(options.cwd);
42
+ try {
43
+ const output = await git.raw(['show', `${options.ref}:${options.filePath}`]);
44
+ const parsed = JSON.parse(output);
45
+ return { ok: true, value: parsed };
46
+ }
47
+ catch (error) {
48
+ const message = toErrorMessage(error);
49
+ if (matchesAnyNotFoundPattern(message)) {
50
+ return { ok: false, missing: true };
51
+ }
52
+ return { ok: false, missing: false, reason: message };
53
+ }
54
+ }
55
+ function isMissingRefResult(result) {
56
+ return !result.ok && 'missing' in result && result.missing === true;
57
+ }
58
+ function isErrorRefResult(result) {
59
+ return !result.ok && 'missing' in result && result.missing === false;
60
+ }
61
+ export function pathReferenceExistsSync(reference, cwd) {
62
+ const normalizedReference = reference.trim();
63
+ if (!normalizedReference) {
64
+ return false;
65
+ }
66
+ if (hasGlobPattern(normalizedReference)) {
67
+ const matches = fg.sync(normalizedReference, getGlobOptions(cwd));
68
+ return matches.length > 0;
69
+ }
70
+ const fullPath = path.join(cwd, normalizedReference);
71
+ return existsSync(fullPath);
72
+ }
73
+ export async function pathReferenceExists(reference, cwd) {
74
+ const normalizedReference = reference.trim();
75
+ if (!normalizedReference) {
76
+ return false;
77
+ }
78
+ if (hasGlobPattern(normalizedReference)) {
79
+ const matches = await fg(normalizedReference, getGlobOptions(cwd));
80
+ return matches.length > 0;
81
+ }
82
+ const fullPath = path.join(cwd, normalizedReference);
83
+ return existsSync(fullPath);
84
+ }
85
+ export async function resolveBaseRef(options) {
86
+ if (options.baseRef && options.baseRef.trim()) {
87
+ return options.baseRef.trim();
88
+ }
89
+ const git = createGitForPath(options.cwd);
90
+ for (const candidateRef of BASE_REF_CANDIDATES) {
91
+ try {
92
+ if (await git.branchExists(candidateRef)) {
93
+ return candidateRef;
94
+ }
95
+ }
96
+ catch {
97
+ // Continue trying other candidates.
98
+ }
99
+ }
100
+ return null;
101
+ }
102
+ export async function resolveChangedFiles(options) {
103
+ const cwd = options.cwd;
104
+ const headRef = options.headRef || DEFAULT_HEAD_REF;
105
+ const baseRef = await resolveBaseRef({ cwd, baseRef: options.baseRef });
106
+ if (!baseRef) {
107
+ return {
108
+ ok: false,
109
+ reason: BASE_REF_UNAVAILABLE_REASON,
110
+ };
111
+ }
112
+ const git = createGitForPath(cwd);
113
+ try {
114
+ const output = await git.raw(['diff', '--name-only', `${baseRef}...${headRef}`]);
115
+ const files = splitLines(output).map((filePath) => normalizePathForCoverage(filePath));
116
+ return {
117
+ ok: true,
118
+ files,
119
+ baseRef,
120
+ headRef,
121
+ };
122
+ }
123
+ catch (error) {
124
+ return {
125
+ ok: false,
126
+ reason: toErrorMessage(error),
127
+ };
128
+ }
129
+ }
130
+ export async function resolveCliBinDiff(options) {
131
+ const cwd = options.cwd;
132
+ const headRef = options.headRef || DEFAULT_HEAD_REF;
133
+ const baseRef = await resolveBaseRef({ cwd, baseRef: options.baseRef });
134
+ if (!baseRef) {
135
+ return {
136
+ state: 'unavailable',
137
+ reason: BASE_REF_UNAVAILABLE_REASON,
138
+ headRef,
139
+ };
140
+ }
141
+ const baseDoc = await readJsonFileAtRef({ cwd, ref: baseRef, filePath: CLI_PACKAGE_JSON_PATH });
142
+ const headDoc = await readJsonFileAtRef({ cwd, ref: headRef, filePath: CLI_PACKAGE_JSON_PATH });
143
+ if (isErrorRefResult(headDoc)) {
144
+ return {
145
+ state: 'unavailable',
146
+ reason: headDoc.reason,
147
+ baseRef,
148
+ headRef,
149
+ };
150
+ }
151
+ if (isErrorRefResult(baseDoc)) {
152
+ return {
153
+ state: 'unavailable',
154
+ reason: baseDoc.reason,
155
+ baseRef,
156
+ headRef,
157
+ };
158
+ }
159
+ // R-006: Base path missing and head exists means the CLI package file is newly introduced.
160
+ if (isMissingRefResult(baseDoc) && headDoc.ok) {
161
+ return {
162
+ state: 'changed',
163
+ reason: `${CLI_PACKAGE_JSON_PATH} does not exist at ${baseRef} but exists at ${headRef}.`,
164
+ baseRef,
165
+ headRef,
166
+ };
167
+ }
168
+ // File removed is also a change.
169
+ if (baseDoc.ok && isMissingRefResult(headDoc)) {
170
+ return {
171
+ state: 'changed',
172
+ reason: `${CLI_PACKAGE_JSON_PATH} exists at ${baseRef} but not at ${headRef}.`,
173
+ baseRef,
174
+ headRef,
175
+ };
176
+ }
177
+ if (isMissingRefResult(baseDoc) && isMissingRefResult(headDoc)) {
178
+ return {
179
+ state: 'unavailable',
180
+ reason: `${CLI_PACKAGE_JSON_PATH} is missing at both ${baseRef} and ${headRef}.`,
181
+ baseRef,
182
+ headRef,
183
+ };
184
+ }
185
+ if (!baseDoc.ok || !headDoc.ok) {
186
+ return {
187
+ state: 'unavailable',
188
+ reason: 'Unable to resolve package.json state at base/head refs.',
189
+ baseRef,
190
+ headRef,
191
+ };
192
+ }
193
+ const baseBin = baseDoc.value.bin;
194
+ const headBin = headDoc.value.bin;
195
+ return {
196
+ state: isDeepStrictEqual(baseBin, headBin) ? 'unchanged' : 'changed',
197
+ baseRef,
198
+ headRef,
199
+ };
200
+ }
201
+ export function createDefaultWURuleResolvers() {
202
+ return {
203
+ pathReferenceExists,
204
+ resolveChangedFiles,
205
+ resolveCliBinDiff,
206
+ };
207
+ }
208
+ //# sourceMappingURL=wu-rules-resolvers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wu-rules-resolvers.js","sourceRoot":"","sources":["../src/wu-rules-resolvers.ts"],"names":[],"mappings":"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"}
@@ -74,8 +74,8 @@ export declare const BaseWUSchema: z.ZodObject<{
74
74
  }>>;
75
75
  priority: z.ZodDefault<z.ZodEnum<{
76
76
  P2: "P2";
77
- P0: "P0";
78
77
  P1: "P1";
78
+ P0: "P0";
79
79
  P3: "P3";
80
80
  }>>;
81
81
  created: z.ZodString;
@@ -93,6 +93,7 @@ export declare const BaseWUSchema: z.ZodObject<{
93
93
  blocks: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>, z.ZodArray<z.ZodString>>>;
94
94
  blocked_by: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>, z.ZodArray<z.ZodString>>>;
95
95
  labels: z.ZodOptional<z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>>;
96
+ plan: z.ZodOptional<z.ZodString>;
96
97
  spec_refs: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
97
98
  file: z.ZodOptional<z.ZodString>;
98
99
  section: z.ZodString;
@@ -123,7 +124,10 @@ export declare const BaseWUSchema: z.ZodObject<{
123
124
  completed: z.ZodOptional<z.ZodString>;
124
125
  agent_type: z.ZodEnum<{
125
126
  "claude-code": "claude-code";
127
+ "codex-cli": "codex-cli";
126
128
  cursor: "cursor";
129
+ "gemini-cli": "gemini-cli";
130
+ windsurf: "windsurf";
127
131
  copilot: "copilot";
128
132
  other: "other";
129
133
  }>;
@@ -194,8 +198,8 @@ export declare const ReadyWUSchema: z.ZodObject<{
194
198
  }>>;
195
199
  priority: z.ZodDefault<z.ZodEnum<{
196
200
  P2: "P2";
197
- P0: "P0";
198
201
  P1: "P1";
202
+ P0: "P0";
199
203
  P3: "P3";
200
204
  }>>;
201
205
  created: z.ZodString;
@@ -213,6 +217,7 @@ export declare const ReadyWUSchema: z.ZodObject<{
213
217
  blocks: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>, z.ZodArray<z.ZodString>>>;
214
218
  blocked_by: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>, z.ZodArray<z.ZodString>>>;
215
219
  labels: z.ZodOptional<z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>>;
220
+ plan: z.ZodOptional<z.ZodString>;
216
221
  spec_refs: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
217
222
  file: z.ZodOptional<z.ZodString>;
218
223
  section: z.ZodString;
@@ -243,7 +248,10 @@ export declare const ReadyWUSchema: z.ZodObject<{
243
248
  completed: z.ZodOptional<z.ZodString>;
244
249
  agent_type: z.ZodEnum<{
245
250
  "claude-code": "claude-code";
251
+ "codex-cli": "codex-cli";
246
252
  cursor: "cursor";
253
+ "gemini-cli": "gemini-cli";
254
+ windsurf: "windsurf";
247
255
  copilot: "copilot";
248
256
  other: "other";
249
257
  }>;
@@ -320,8 +328,8 @@ export declare const WUSchema: z.ZodObject<{
320
328
  }>>;
321
329
  priority: z.ZodDefault<z.ZodEnum<{
322
330
  P2: "P2";
323
- P0: "P0";
324
331
  P1: "P1";
332
+ P0: "P0";
325
333
  P3: "P3";
326
334
  }>>;
327
335
  created: z.ZodString;
@@ -339,6 +347,7 @@ export declare const WUSchema: z.ZodObject<{
339
347
  blocks: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>, z.ZodArray<z.ZodString>>>;
340
348
  blocked_by: z.ZodOptional<z.ZodPipe<z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>, z.ZodArray<z.ZodString>>>;
341
349
  labels: z.ZodOptional<z.ZodPipe<z.ZodArray<z.ZodString>, z.ZodTransform<string[], string[]>>>;
350
+ plan: z.ZodOptional<z.ZodString>;
342
351
  spec_refs: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
343
352
  file: z.ZodOptional<z.ZodString>;
344
353
  section: z.ZodString;
@@ -369,7 +378,10 @@ export declare const WUSchema: z.ZodObject<{
369
378
  completed: z.ZodOptional<z.ZodString>;
370
379
  agent_type: z.ZodEnum<{
371
380
  "claude-code": "claude-code";
381
+ "codex-cli": "codex-cli";
372
382
  cursor: "cursor";
383
+ "gemini-cli": "gemini-cli";
384
+ windsurf: "windsurf";
373
385
  copilot: "copilot";
374
386
  other: "other";
375
387
  }>;
@@ -437,7 +449,7 @@ export declare function validateWU(data: any): z.ZodSafeParseResult<{
437
449
  lane: string;
438
450
  type: "documentation" | "process" | "feature" | "tooling" | "bug" | "chore" | "refactor";
439
451
  status: "todo" | "ready" | "backlog" | "in_progress" | "blocked" | "done" | "completed" | "cancelled" | "abandoned" | "deferred" | "closed" | "superseded";
440
- priority: "P2" | "P0" | "P1" | "P3";
452
+ priority: "P2" | "P1" | "P0" | "P3";
441
453
  created: string;
442
454
  code_paths: string[];
443
455
  tests: {
@@ -462,6 +474,7 @@ export declare function validateWU(data: any): z.ZodSafeParseResult<{
462
474
  blocks?: string[];
463
475
  blocked_by?: string[];
464
476
  labels?: string[];
477
+ plan?: string;
465
478
  spec_refs?: {
466
479
  section: string;
467
480
  file?: string;
@@ -482,7 +495,7 @@ export declare function validateWU(data: any): z.ZodSafeParseResult<{
482
495
  agent_sessions?: {
483
496
  session_id: string;
484
497
  started: string;
485
- agent_type: "claude-code" | "cursor" | "copilot" | "other";
498
+ agent_type: "claude-code" | "codex-cli" | "cursor" | "gemini-cli" | "windsurf" | "copilot" | "other";
486
499
  incidents_logged: number;
487
500
  incidents_major: number;
488
501
  completed?: string;
@@ -522,7 +535,7 @@ export declare function validateReadyWU(data: any): z.ZodSafeParseResult<{
522
535
  lane: string;
523
536
  type: "documentation" | "process" | "feature" | "tooling" | "bug" | "chore" | "refactor";
524
537
  status: "todo" | "ready" | "backlog" | "in_progress" | "blocked" | "done" | "completed" | "cancelled" | "abandoned" | "deferred" | "closed" | "superseded";
525
- priority: "P2" | "P0" | "P1" | "P3";
538
+ priority: "P2" | "P1" | "P0" | "P3";
526
539
  created: string;
527
540
  code_paths: string[];
528
541
  tests: {
@@ -547,6 +560,7 @@ export declare function validateReadyWU(data: any): z.ZodSafeParseResult<{
547
560
  blocks?: string[];
548
561
  blocked_by?: string[];
549
562
  labels?: string[];
563
+ plan?: string;
550
564
  spec_refs?: {
551
565
  section: string;
552
566
  file?: string;
@@ -567,7 +581,7 @@ export declare function validateReadyWU(data: any): z.ZodSafeParseResult<{
567
581
  agent_sessions?: {
568
582
  session_id: string;
569
583
  started: string;
570
- agent_type: "claude-code" | "cursor" | "copilot" | "other";
584
+ agent_type: "claude-code" | "codex-cli" | "cursor" | "gemini-cli" | "windsurf" | "copilot" | "other";
571
585
  incidents_logged: number;
572
586
  incidents_major: number;
573
587
  completed?: string;
@@ -709,7 +723,7 @@ export declare function validateAndNormalizeWUYAML(data: any): {
709
723
  lane: string;
710
724
  type: "documentation" | "process" | "feature" | "tooling" | "bug" | "chore" | "refactor";
711
725
  status: "todo" | "ready" | "backlog" | "in_progress" | "blocked" | "done" | "completed" | "cancelled" | "abandoned" | "deferred" | "closed" | "superseded";
712
- priority: "P2" | "P0" | "P1" | "P3";
726
+ priority: "P2" | "P1" | "P0" | "P3";
713
727
  created: string;
714
728
  code_paths: string[];
715
729
  tests: {
@@ -734,6 +748,7 @@ export declare function validateAndNormalizeWUYAML(data: any): {
734
748
  blocks?: string[];
735
749
  blocked_by?: string[];
736
750
  labels?: string[];
751
+ plan?: string;
737
752
  spec_refs?: {
738
753
  section: string;
739
754
  file?: string;
@@ -754,7 +769,7 @@ export declare function validateAndNormalizeWUYAML(data: any): {
754
769
  agent_sessions?: {
755
770
  session_id: string;
756
771
  started: string;
757
- agent_type: "claude-code" | "cursor" | "copilot" | "other";
772
+ agent_type: "claude-code" | "codex-cli" | "cursor" | "gemini-cli" | "windsurf" | "copilot" | "other";
758
773
  incidents_logged: number;
759
774
  incidents_major: number;
760
775
  completed?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"wu-schema.d.ts","sourceRoot":"","sources":["../src/wu-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA6BxB;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,oBAAoB,kBAAkB,CAAC;AAkgBpD;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIvB,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAe,CAAC;AAE1C;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAInB,CAAC;AAEH;;;;;;;;;;GAUG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,CAAC,IAAI,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAE9B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAAC,IAAI,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAEnC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,EAAE,KAAA;;;EAiBhC;AAUD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,UAMpC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,KAAA;;;;EAiCvC;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,KAAA,SAqC1C;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,KAAA,EAAE,UAAU,KAAA;;;;;EAUlD;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,KAAA;;;;EAO5C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyB9C;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,KAAA;;EA+CxC"}
1
+ {"version":3,"file":"wu-schema.d.ts","sourceRoot":"","sources":["../src/wu-schema.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA6BxB;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,oBAAoB,kBAAkB,CAAC;AAghBpD;;;;;;;GAOG;AACH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAIvB,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAAe,CAAC;AAE1C;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAInB,CAAC;AAEH;;;;;;;;;;GAUG;AAEH;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,CAAC,IAAI,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAE9B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAAC,IAAI,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAEnC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,cAAc,CAAC,EAAE,KAAA;;;EAiBhC;AAUD;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,UAMpC,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,KAAA;;;;EAiCvC;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,EAAE,KAAA,SAqC1C;AAED;;;;;;;;;GASG;AACH,wBAAgB,oBAAoB,CAAC,EAAE,KAAA,EAAE,UAAU,KAAA;;;;;EAUlD;AAED;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,KAAA;;;;EAO5C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,KAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAyB9C;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,KAAA;;EA+CxC"}
package/dist/wu-schema.js CHANGED
@@ -280,6 +280,11 @@ const sharedFields = {
280
280
  /** Cross-cutting tags (orthogonal to initiative) - WU-1750: Normalized */
281
281
  labels: normalizedStringArray.optional(),
282
282
  // === End Initiative System Fields ===
283
+ /**
284
+ * WU-1683: First-class plan field, symmetric with initiative `related_plan`.
285
+ * Set via wu:create --plan, wu:edit --plan, or plan:link --id WU-XXX.
286
+ */
287
+ plan: z.string().optional(),
283
288
  /**
284
289
  * WU-1833: References to plans, design docs, external specifications
285
290
  * WU-1834: Supports both flat string array AND nested object format for backwards compatibility
@@ -369,7 +374,15 @@ const sharedFields = {
369
374
  session_id: z.string().uuid(),
370
375
  started: z.string().datetime(),
371
376
  completed: z.string().datetime().optional(),
372
- agent_type: z.enum(['claude-code', 'cursor', 'copilot', 'other']),
377
+ agent_type: z.enum([
378
+ 'claude-code',
379
+ 'codex-cli',
380
+ 'cursor',
381
+ 'gemini-cli',
382
+ 'windsurf',
383
+ 'copilot',
384
+ 'other',
385
+ ]),
373
386
  context_tier: z.union([z.literal(1), z.literal(2), z.literal(3)]),
374
387
  incidents_logged: z.number().int().min(0).default(0),
375
388
  incidents_major: z.number().int().min(0).default(0),