openplanr 1.2.8 → 1.4.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 (171) hide show
  1. package/README.md +30 -3
  2. package/dist/agents/task-parser.d.ts.map +1 -1
  3. package/dist/agents/task-parser.js +8 -34
  4. package/dist/agents/task-parser.js.map +1 -1
  5. package/dist/ai/prompts/prompt-builder.d.ts +14 -0
  6. package/dist/ai/prompts/prompt-builder.d.ts.map +1 -1
  7. package/dist/ai/prompts/prompt-builder.js +32 -1
  8. package/dist/ai/prompts/prompt-builder.js.map +1 -1
  9. package/dist/ai/prompts/system-prompts.d.ts +3 -2
  10. package/dist/ai/prompts/system-prompts.d.ts.map +1 -1
  11. package/dist/ai/prompts/system-prompts.js +117 -7
  12. package/dist/ai/prompts/system-prompts.js.map +1 -1
  13. package/dist/ai/schemas/ai-response-schemas.d.ts +62 -0
  14. package/dist/ai/schemas/ai-response-schemas.d.ts.map +1 -1
  15. package/dist/ai/schemas/ai-response-schemas.js +51 -1
  16. package/dist/ai/schemas/ai-response-schemas.js.map +1 -1
  17. package/dist/ai/types.d.ts.map +1 -1
  18. package/dist/ai/types.js +2 -0
  19. package/dist/ai/types.js.map +1 -1
  20. package/dist/cli/commands/backlog.d.ts +12 -0
  21. package/dist/cli/commands/backlog.d.ts.map +1 -1
  22. package/dist/cli/commands/backlog.js +88 -2
  23. package/dist/cli/commands/backlog.js.map +1 -1
  24. package/dist/cli/commands/config.d.ts.map +1 -1
  25. package/dist/cli/commands/config.js +8 -2
  26. package/dist/cli/commands/config.js.map +1 -1
  27. package/dist/cli/commands/linear.d.ts +8 -0
  28. package/dist/cli/commands/linear.d.ts.map +1 -0
  29. package/dist/cli/commands/linear.js +550 -0
  30. package/dist/cli/commands/linear.js.map +1 -0
  31. package/dist/cli/commands/quick.d.ts +17 -0
  32. package/dist/cli/commands/quick.d.ts.map +1 -1
  33. package/dist/cli/commands/quick.js +31 -15
  34. package/dist/cli/commands/quick.js.map +1 -1
  35. package/dist/cli/commands/revise.d.ts +9 -8
  36. package/dist/cli/commands/revise.d.ts.map +1 -1
  37. package/dist/cli/commands/revise.js +93 -25
  38. package/dist/cli/commands/revise.js.map +1 -1
  39. package/dist/cli/commands/spec.d.ts +28 -0
  40. package/dist/cli/commands/spec.d.ts.map +1 -0
  41. package/dist/cli/commands/spec.js +529 -0
  42. package/dist/cli/commands/spec.js.map +1 -0
  43. package/dist/cli/index.js +4 -0
  44. package/dist/cli/index.js.map +1 -1
  45. package/dist/models/schema.d.ts +44 -0
  46. package/dist/models/schema.d.ts.map +1 -1
  47. package/dist/models/schema.js +50 -0
  48. package/dist/models/schema.js.map +1 -1
  49. package/dist/models/types.d.ts +188 -3
  50. package/dist/models/types.d.ts.map +1 -1
  51. package/dist/services/artifact-gathering.d.ts +4 -0
  52. package/dist/services/artifact-gathering.d.ts.map +1 -1
  53. package/dist/services/artifact-gathering.js +1 -1
  54. package/dist/services/artifact-gathering.js.map +1 -1
  55. package/dist/services/artifact-service.d.ts +12 -1
  56. package/dist/services/artifact-service.d.ts.map +1 -1
  57. package/dist/services/artifact-service.js +49 -6
  58. package/dist/services/artifact-service.js.map +1 -1
  59. package/dist/services/atomic-write-service.d.ts +2 -2
  60. package/dist/services/atomic-write-service.js +2 -2
  61. package/dist/services/audit-log-service.d.ts +3 -6
  62. package/dist/services/audit-log-service.d.ts.map +1 -1
  63. package/dist/services/audit-log-service.js +4 -7
  64. package/dist/services/audit-log-service.js.map +1 -1
  65. package/dist/services/cascade-service.d.ts +2 -2
  66. package/dist/services/cascade-service.js +3 -3
  67. package/dist/services/cascade-service.js.map +1 -1
  68. package/dist/services/config-service.d.ts.map +1 -1
  69. package/dist/services/config-service.js +1 -0
  70. package/dist/services/config-service.js.map +1 -1
  71. package/dist/services/credentials-service.js +2 -2
  72. package/dist/services/credentials-service.js.map +1 -1
  73. package/dist/services/diff-service.d.ts +1 -1
  74. package/dist/services/diff-service.js +1 -1
  75. package/dist/services/evidence-verifier.d.ts +1 -1
  76. package/dist/services/evidence-verifier.d.ts.map +1 -1
  77. package/dist/services/evidence-verifier.js +5 -2
  78. package/dist/services/evidence-verifier.js.map +1 -1
  79. package/dist/services/git-service.d.ts +4 -4
  80. package/dist/services/git-service.js +4 -4
  81. package/dist/services/graph-integrity.d.ts +2 -3
  82. package/dist/services/graph-integrity.d.ts.map +1 -1
  83. package/dist/services/graph-integrity.js +2 -3
  84. package/dist/services/graph-integrity.js.map +1 -1
  85. package/dist/services/linear/body-formatters.d.ts +69 -0
  86. package/dist/services/linear/body-formatters.d.ts.map +1 -0
  87. package/dist/services/linear/body-formatters.js +183 -0
  88. package/dist/services/linear/body-formatters.js.map +1 -0
  89. package/dist/services/linear/constants.d.ts +61 -0
  90. package/dist/services/linear/constants.d.ts.map +1 -0
  91. package/dist/services/linear/constants.js +84 -0
  92. package/dist/services/linear/constants.js.map +1 -0
  93. package/dist/services/linear/errors.d.ts +14 -0
  94. package/dist/services/linear/errors.d.ts.map +1 -0
  95. package/dist/services/linear/errors.js +106 -0
  96. package/dist/services/linear/errors.js.map +1 -0
  97. package/dist/services/linear/estimate-resolver.d.ts +50 -0
  98. package/dist/services/linear/estimate-resolver.d.ts.map +1 -0
  99. package/dist/services/linear/estimate-resolver.js +82 -0
  100. package/dist/services/linear/estimate-resolver.js.map +1 -0
  101. package/dist/services/linear/plan-builders.d.ts +64 -0
  102. package/dist/services/linear/plan-builders.d.ts.map +1 -0
  103. package/dist/services/linear/plan-builders.js +237 -0
  104. package/dist/services/linear/plan-builders.js.map +1 -0
  105. package/dist/services/linear/scope-loaders.d.ts +79 -0
  106. package/dist/services/linear/scope-loaders.d.ts.map +1 -0
  107. package/dist/services/linear/scope-loaders.js +227 -0
  108. package/dist/services/linear/scope-loaders.js.map +1 -0
  109. package/dist/services/linear/strategy-context.d.ts +66 -0
  110. package/dist/services/linear/strategy-context.d.ts.map +1 -0
  111. package/dist/services/linear/strategy-context.js +121 -0
  112. package/dist/services/linear/strategy-context.js.map +1 -0
  113. package/dist/services/linear-mapping-service.d.ts +11 -0
  114. package/dist/services/linear-mapping-service.d.ts.map +1 -0
  115. package/dist/services/linear-mapping-service.js +220 -0
  116. package/dist/services/linear-mapping-service.js.map +1 -0
  117. package/dist/services/linear-pull-service.d.ts +137 -0
  118. package/dist/services/linear-pull-service.d.ts.map +1 -0
  119. package/dist/services/linear-pull-service.js +720 -0
  120. package/dist/services/linear-pull-service.js.map +1 -0
  121. package/dist/services/linear-push-service.d.ts +86 -0
  122. package/dist/services/linear-push-service.d.ts.map +1 -0
  123. package/dist/services/linear-push-service.js +956 -0
  124. package/dist/services/linear-push-service.js.map +1 -0
  125. package/dist/services/linear-service.d.ts +122 -0
  126. package/dist/services/linear-service.d.ts.map +1 -0
  127. package/dist/services/linear-service.js +361 -0
  128. package/dist/services/linear-service.js.map +1 -0
  129. package/dist/services/prompt-service.d.ts +19 -0
  130. package/dist/services/prompt-service.d.ts.map +1 -1
  131. package/dist/services/prompt-service.js +64 -0
  132. package/dist/services/prompt-service.js.map +1 -1
  133. package/dist/services/revise-apply-service.d.ts +55 -0
  134. package/dist/services/revise-apply-service.d.ts.map +1 -0
  135. package/dist/services/revise-apply-service.js +255 -0
  136. package/dist/services/revise-apply-service.js.map +1 -0
  137. package/dist/services/revise-cache-service.d.ts +1 -1
  138. package/dist/services/revise-cache-service.js +1 -1
  139. package/dist/services/revise-plan-service.d.ts +38 -0
  140. package/dist/services/revise-plan-service.d.ts.map +1 -0
  141. package/dist/services/revise-plan-service.js +151 -0
  142. package/dist/services/revise-plan-service.js.map +1 -0
  143. package/dist/services/revise-service.d.ts +18 -11
  144. package/dist/services/revise-service.d.ts.map +1 -1
  145. package/dist/services/revise-service.js +57 -12
  146. package/dist/services/revise-service.js.map +1 -1
  147. package/dist/services/spec-service.d.ts +292 -0
  148. package/dist/services/spec-service.d.ts.map +1 -0
  149. package/dist/services/spec-service.js +805 -0
  150. package/dist/services/spec-service.js.map +1 -0
  151. package/dist/services/template-sections.d.ts +1 -1
  152. package/dist/services/template-sections.js +1 -1
  153. package/dist/templates/backlog/backlog-item.md.hbs +3 -0
  154. package/dist/templates/quick/quick-task.md.hbs +6 -0
  155. package/dist/templates/spec/spec-shaped.md.hbs +89 -0
  156. package/dist/templates/spec/spec.md.hbs +68 -0
  157. package/dist/templates/spec/story.md.hbs +51 -0
  158. package/dist/templates/spec/task.md.hbs +98 -0
  159. package/dist/utils/constants.d.ts +18 -0
  160. package/dist/utils/constants.d.ts.map +1 -1
  161. package/dist/utils/constants.js +25 -0
  162. package/dist/utils/constants.js.map +1 -1
  163. package/dist/utils/diff.d.ts +22 -1
  164. package/dist/utils/diff.d.ts.map +1 -1
  165. package/dist/utils/diff.js +136 -1
  166. package/dist/utils/diff.js.map +1 -1
  167. package/dist/utils/markdown.d.ts +23 -0
  168. package/dist/utils/markdown.d.ts.map +1 -1
  169. package/dist/utils/markdown.js +79 -0
  170. package/dist/utils/markdown.js.map +1 -1
  171. package/package.json +3 -2
@@ -60,6 +60,28 @@ export declare const distributionConfigSchema: z.ZodObject<{
60
60
  emailSmtpHost: z.ZodOptional<z.ZodString>;
61
61
  weeklyRecipientAllowlist: z.ZodOptional<z.ZodArray<z.ZodString>>;
62
62
  }, z.core.$strip>;
63
+ /** Persisted slice of LinearConfig — `planr linear init` writes `teamId` only; other fields are optional. */
64
+ export declare const linearConfigSchema: z.ZodObject<{
65
+ teamId: z.ZodString;
66
+ teamKey: z.ZodOptional<z.ZodString>;
67
+ defaultProjectLead: z.ZodOptional<z.ZodString>;
68
+ statusMap: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
69
+ pushStateIds: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
70
+ standaloneProjectId: z.ZodOptional<z.ZodString>;
71
+ standaloneProjectName: z.ZodOptional<z.ZodString>;
72
+ defaultEpicStrategy: z.ZodOptional<z.ZodEnum<{
73
+ project: "project";
74
+ "milestone-of": "milestone-of";
75
+ "label-on": "label-on";
76
+ }>>;
77
+ typeLabels: z.ZodOptional<z.ZodObject<{
78
+ feature: z.ZodOptional<z.ZodString>;
79
+ story: z.ZodOptional<z.ZodString>;
80
+ task: z.ZodOptional<z.ZodString>;
81
+ quick: z.ZodOptional<z.ZodString>;
82
+ backlog: z.ZodOptional<z.ZodString>;
83
+ }, z.core.$strip>>;
84
+ }, z.core.$strip>;
63
85
  export declare const configSchema: z.ZodObject<{
64
86
  projectName: z.ZodString;
65
87
  targets: z.ZodArray<z.ZodEnum<{
@@ -81,6 +103,7 @@ export declare const configSchema: z.ZodObject<{
81
103
  quick: z.ZodDefault<z.ZodString>;
82
104
  backlog: z.ZodDefault<z.ZodString>;
83
105
  sprint: z.ZodDefault<z.ZodString>;
106
+ spec: z.ZodDefault<z.ZodString>;
84
107
  }, z.core.$strip>;
85
108
  ai: z.ZodOptional<z.ZodObject<{
86
109
  provider: z.ZodEnum<{
@@ -125,6 +148,27 @@ export declare const configSchema: z.ZodObject<{
125
148
  hint: z.ZodOptional<z.ZodString>;
126
149
  }, z.core.$strip>>;
127
150
  }, z.core.$strip>>;
151
+ linear: z.ZodOptional<z.ZodObject<{
152
+ teamId: z.ZodString;
153
+ teamKey: z.ZodOptional<z.ZodString>;
154
+ defaultProjectLead: z.ZodOptional<z.ZodString>;
155
+ statusMap: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
156
+ pushStateIds: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
157
+ standaloneProjectId: z.ZodOptional<z.ZodString>;
158
+ standaloneProjectName: z.ZodOptional<z.ZodString>;
159
+ defaultEpicStrategy: z.ZodOptional<z.ZodEnum<{
160
+ project: "project";
161
+ "milestone-of": "milestone-of";
162
+ "label-on": "label-on";
163
+ }>>;
164
+ typeLabels: z.ZodOptional<z.ZodObject<{
165
+ feature: z.ZodOptional<z.ZodString>;
166
+ story: z.ZodOptional<z.ZodString>;
167
+ task: z.ZodOptional<z.ZodString>;
168
+ quick: z.ZodOptional<z.ZodString>;
169
+ backlog: z.ZodOptional<z.ZodString>;
170
+ }, z.core.$strip>>;
171
+ }, z.core.$strip>>;
128
172
  }, z.core.$strip>;
129
173
  export type ValidatedConfig = z.infer<typeof configSchema>;
130
174
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/models/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe;;;;EAAwC,CAAC;AACrE,eAAO,MAAM,gBAAgB;;;;EAA4C,CAAC;AAC1E,eAAO,MAAM,iBAAiB;;;;EAAwC,CAAC;AAEvE,eAAO,MAAM,cAAc;;;;;;;;iBAIzB,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;iBAIhC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;iBAKvC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;iBAGnC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;iBAKzC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;iBAMnC,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0BvB,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/models/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,eAAe;;;;EAAwC,CAAC;AACrE,eAAO,MAAM,gBAAgB;;;;EAA4C,CAAC;AAC1E,eAAO,MAAM,iBAAiB;;;;EAAwC,CAAC;AAEvE,eAAO,MAAM,cAAc;;;;;;;;iBAIzB,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;iBAIhC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;iBAKvC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;iBAGnC,CAAC;AAEH,eAAO,MAAM,8BAA8B;;;;;iBAKzC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;iBAMnC,CAAC;AASH,6GAA6G;AAC7G,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;iBA4C7B,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA4BvB,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC"}
@@ -35,6 +35,54 @@ export const distributionConfigSchema = z.object({
35
35
  emailSmtpHost: z.string().optional(),
36
36
  weeklyRecipientAllowlist: z.array(z.string()).optional(),
37
37
  });
38
+ /**
39
+ * UUIDv4 regex — Linear workflow state ids follow this form. `/i` is defensive
40
+ * against case-normalizing tools (Linear's API emits lowercase canonically).
41
+ */
42
+ const LINEAR_UUID_REGEX = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
43
+ /** Persisted slice of LinearConfig — `planr linear init` writes `teamId` only; other fields are optional. */
44
+ export const linearConfigSchema = z.object({
45
+ teamId: z.string().min(1),
46
+ teamKey: z.string().optional(),
47
+ defaultProjectLead: z.string().optional(),
48
+ /**
49
+ * Pull: Linear state name → OpenPlanr status; push legacy: `pending`|`in-progress`|`done` → state id uuid
50
+ * (see `pushStateIds`; both may coexist in one object in older configs).
51
+ */
52
+ statusMap: z.record(z.string(), z.string()).optional(),
53
+ /**
54
+ * Push: OpenPlanr status name → Linear workflow state id (uuid). Validated here
55
+ * so a typo in a UUID fails at config-load time with a clear pointer, not
56
+ * mid-push with a confusing SDK error.
57
+ */
58
+ pushStateIds: z
59
+ .record(z.string(), z
60
+ .string()
61
+ .regex(LINEAR_UUID_REGEX, 'linear.pushStateIds value must be a Linear workflow state UUID'))
62
+ .optional(),
63
+ /**
64
+ * Target Linear project for `QT-*` / `BL-*` pushes. Must be a valid
65
+ * Linear project UUID — fails fast at config-load time so a typo never
66
+ * reaches the API.
67
+ */
68
+ standaloneProjectId: z
69
+ .string()
70
+ .regex(LINEAR_UUID_REGEX, 'linear.standaloneProjectId must be a Linear project UUID')
71
+ .optional(),
72
+ standaloneProjectName: z.string().optional(),
73
+ /** Pre-pick the mapping strategy to skip the first-push prompt. */
74
+ defaultEpicStrategy: z.enum(['project', 'milestone-of', 'label-on']).optional(),
75
+ /** Override the auto-applied type-label names. Any missing key falls back to the default. */
76
+ typeLabels: z
77
+ .object({
78
+ feature: z.string().min(1).optional(),
79
+ story: z.string().min(1).optional(),
80
+ task: z.string().min(1).optional(),
81
+ quick: z.string().min(1).optional(),
82
+ backlog: z.string().min(1).optional(),
83
+ })
84
+ .optional(),
85
+ });
38
86
  export const configSchema = z.object({
39
87
  projectName: z.string().min(1),
40
88
  targets: z.array(targetCLISchema).min(1),
@@ -52,6 +100,7 @@ export const configSchema = z.object({
52
100
  quick: z.string().default('QT'),
53
101
  backlog: z.string().default('BL'),
54
102
  sprint: z.string().default('SPRINT'),
103
+ spec: z.string().default('SPEC'),
55
104
  }),
56
105
  ai: aiConfigSchema.optional(),
57
106
  defaultAgent: codingAgentSchema.optional(),
@@ -61,5 +110,6 @@ export const configSchema = z.object({
61
110
  reports: stakeholderReportsConfigSchema.optional(),
62
111
  distribution: distributionConfigSchema.optional(),
63
112
  reportLinter: reportLinterConfigSchema.optional(),
113
+ linear: linearConfigSchema.optional(),
64
114
  });
65
115
  //# sourceMappingURL=schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/models/schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/models/schema.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,107 @@ export type TargetCLI = 'cursor' | 'claude' | 'codex';
3
3
  export type TaskStatus = 'pending' | 'in-progress' | 'done';
4
4
  export type AIProviderName = 'anthropic' | 'openai' | 'ollama';
5
5
  export type CodingAgentName = 'claude' | 'cursor' | 'codex';
6
+ /**
7
+ * How an OpenPlanr Epic is mapped into Linear's object model. Stored
8
+ * per-epic in frontmatter; missing = `'project'` (one-to-one Epic →
9
+ * Linear Project, the default).
10
+ */
11
+ export type LinearMappingStrategy = 'project' | 'milestone-of' | 'label-on';
6
12
  export interface AIConfig {
7
13
  provider: AIProviderName;
8
14
  model?: string;
9
15
  ollamaBaseUrl?: string;
10
16
  }
17
+ /**
18
+ * Linear integration config. `teamId` is persisted in `.planr/config.json`
19
+ * after `planr linear init`. The PAT is stored via `credentials-service`
20
+ * (provider key `linear`), never in the config file — use optional `token`
21
+ * only for in-memory flows.
22
+ */
23
+ export interface LinearConfig {
24
+ teamId: string;
25
+ /** Team key (e.g. ENG) for display; not required for API calls. */
26
+ teamKey?: string;
27
+ /** Optional Linear user id to set as project lead on created/updated projects. */
28
+ defaultProjectLead?: string;
29
+ /**
30
+ * Pull: Linear **workflow state name** (any casing) → `pending` |
31
+ * `in-progress` | `done`. Merged with built-in defaults. For legacy
32
+ * projects, the same key previously held **push** UUIDs keyed by
33
+ * OpenPlanr status; those `uuid`-shaped values are ignored for pull and
34
+ * handled via `pushStateIds` / legacy push heuristics.
35
+ */
36
+ statusMap?: Record<string, string>;
37
+ /**
38
+ * Push: OpenPlanr status key → Linear workflow **state id** (UUID).
39
+ */
40
+ pushStateIds?: Record<string, string>;
41
+ /**
42
+ * Linear project (UUID) that hosts `QT-*` and `BL-*` pushes. When unset,
43
+ * the first QT/BL push prompts for a project (or to create one).
44
+ */
45
+ standaloneProjectId?: string;
46
+ /** Display-only name for the standalone project (shown in logs + prompts). */
47
+ standaloneProjectName?: string;
48
+ /**
49
+ * Skip the first-push mapping-strategy prompt by supplying a default.
50
+ * Useful for CI / non-interactive consumers.
51
+ */
52
+ defaultEpicStrategy?: LinearMappingStrategy;
53
+ /**
54
+ * Override the auto-applied type label names. Linear push attaches one
55
+ * label per artifact (GitHub-style filtering) — `feature` for features,
56
+ * `story` for user stories, `task` for tasklists, `quick-task` for QTs,
57
+ * `backlog` for backlog items. Users can rename them here without
58
+ * breaking anything (e.g., `{ story: "user-story" }`). Missing keys fall
59
+ * back to the defaults.
60
+ */
61
+ typeLabels?: {
62
+ feature?: string;
63
+ story?: string;
64
+ task?: string;
65
+ quick?: string;
66
+ backlog?: string;
67
+ };
68
+ /** In-memory / tests only; not persisted in `config.json`. */
69
+ token?: string;
70
+ }
71
+ /**
72
+ * Linear's issue estimation scale per team. Mirrors the string values
73
+ * returned by the Linear SDK's `Team.issueEstimationType`:
74
+ * - `notUsed` — team has estimation disabled; push skips the field silently.
75
+ * - `fibonacci` — 0, 1, 2, 3, 5, 8, 13, 21.
76
+ * - `linear` — 0, 1, 2, 3, 4, 5.
77
+ * - `exponential` — 0, 1, 2, 4, 8, 16.
78
+ * - `tShirt` — categorical XS/S/M/L/XL; no reliable numeric mapping, push skips with one-per-run warning.
79
+ */
80
+ export type LinearIssueEstimationType = 'notUsed' | 'fibonacci' | 'linear' | 'exponential' | 'tShirt';
81
+ /** Options for `planr linear sync` and related flows. */
82
+ export interface LinearSyncOptions {
83
+ /**
84
+ * When true, compute and print what would change without writing local files or mutating Linear issue bodies.
85
+ * Read-only Linear API calls may still run to compare remote state.
86
+ */
87
+ dryRun?: boolean;
88
+ /**
89
+ * For `planr linear push`: skip creating new Linear projects/issues; only update existing linked entities.
90
+ * For `planr linear sync`: only affects flows that would create remote entities (sync is update-only by default).
91
+ */
92
+ updateOnly?: boolean;
93
+ /** Checkbox merge strategy for the tasklist step. */
94
+ onConflict?: 'prompt' | 'local' | 'linear';
95
+ }
96
+ /** One row for `planr linear status` (local mapping table). */
97
+ export interface LinearMappingTableRow {
98
+ kind: 'epic' | 'feature' | 'story' | 'task' | 'quick' | 'backlog';
99
+ openPlanrId: string;
100
+ linearIdentifier: string;
101
+ linearUrl: string;
102
+ /** OpenPlanr `status` when present, em dash when N/A. */
103
+ lastKnownState: string;
104
+ /** e.g. stale-id warning */
105
+ note?: string;
106
+ }
11
107
  export interface OpenPlanrConfig {
12
108
  projectName: string;
13
109
  targets: TargetCLI[];
@@ -25,6 +121,15 @@ export interface OpenPlanrConfig {
25
121
  quick: string;
26
122
  backlog: string;
27
123
  sprint: string;
124
+ /**
125
+ * Spec-driven mode (third planning posture alongside agile + QT).
126
+ * Specs decompose into nested User Stories and Tasks with rich
127
+ * agent-execution contracts (file Create/Modify/Preserve lists,
128
+ * Type=UI|Tech, agent assignment, build/test DoD). See
129
+ * `docs/proposals/spec-driven-mode.md` and
130
+ * https://github.com/openplanr/openplanr-pipeline for the schema.
131
+ */
132
+ spec: string;
28
133
  };
29
134
  ai?: AIConfig;
30
135
  defaultAgent?: CodingAgentName;
@@ -44,6 +149,8 @@ export interface OpenPlanrConfig {
44
149
  weeklyRecipientAllowlist?: string[];
45
150
  };
46
151
  reportLinter?: ReportLinterConfig;
152
+ /** Set after `planr linear init`; token is not saved in JSON. */
153
+ linear?: LinearConfig;
47
154
  }
48
155
  export interface BaseArtifact {
49
156
  id: string;
@@ -63,6 +170,20 @@ export interface Epic extends BaseArtifact {
63
170
  dependencies: string;
64
171
  risks: string;
65
172
  featureIds: string[];
173
+ /** Linear project id (UUID) after a successful `planr linear push`. */
174
+ linearProjectId?: string;
175
+ /** Human-readable project label in Linear (e.g. name or slug). */
176
+ linearProjectIdentifier?: string;
177
+ linearProjectUrl?: string;
178
+ /**
179
+ * How this epic maps into Linear. Missing ⇒ treated as `'project'`
180
+ * for backward compatibility with v1 pushes.
181
+ */
182
+ linearMappingStrategy?: LinearMappingStrategy;
183
+ /** Set when strategy === `'milestone-of'`. UUID of the ProjectMilestone. */
184
+ linearMilestoneId?: string;
185
+ /** Set when strategy === `'label-on'`. UUID of the IssueLabel. */
186
+ linearLabelId?: string;
66
187
  }
67
188
  export interface Feature extends BaseArtifact {
68
189
  epicId: string;
@@ -71,14 +192,45 @@ export interface Feature extends BaseArtifact {
71
192
  overview: string;
72
193
  functionalRequirements: string[];
73
194
  storyIds: string[];
195
+ /** Top-level project issue in Linear (linked via project + team). */
196
+ linearIssueId?: string;
197
+ linearIssueIdentifier?: string;
198
+ linearIssueUrl?: string;
199
+ /** Set when the parent epic's strategy is `'milestone-of'`. */
200
+ linearProjectMilestoneId?: string;
201
+ /** Set when the parent epic's strategy is `'label-on'`. */
202
+ linearLabelIds?: string[];
203
+ /**
204
+ * Last reconciled status value, used as the `base` in the three-way status
205
+ * merge run by `planr linear sync`. Missing = no prior sync; the merge
206
+ * treats that as a conflict when local and Linear disagree, resolved per
207
+ * `--on-conflict`.
208
+ */
209
+ linearStatusReconciled?: string;
210
+ /** ISO date-time of the last status reconciliation with Linear. */
211
+ linearStatusSyncedAt?: string;
74
212
  }
75
213
  export interface UserStory extends BaseArtifact {
76
214
  featureId: string;
215
+ status?: TaskStatus;
77
216
  role: string;
78
217
  goal: string;
79
218
  benefit: string;
80
219
  acceptanceCriteria: string;
81
220
  additionalNotes?: string;
221
+ linearIssueId?: string;
222
+ linearIssueIdentifier?: string;
223
+ linearIssueUrl?: string;
224
+ /** Parent feature issue id in Linear (sub-issues). */
225
+ linearParentIssueId?: string;
226
+ /** Set when the containing epic's strategy is `'milestone-of'`. */
227
+ linearProjectMilestoneId?: string;
228
+ /** Set when the containing epic's strategy is `'label-on'`. */
229
+ linearLabelIds?: string[];
230
+ /** Last reconciled status, used as `base` in the three-way status merge. */
231
+ linearStatusReconciled?: string;
232
+ /** ISO date-time of the last status reconciliation with Linear. */
233
+ linearStatusSyncedAt?: string;
82
234
  }
83
235
  export interface TaskItem {
84
236
  id: string;
@@ -88,7 +240,23 @@ export interface TaskItem {
88
240
  }
89
241
  export interface TaskList extends BaseArtifact {
90
242
  storyId?: string;
243
+ featureId?: string;
91
244
  tasks: TaskItem[];
245
+ linearIssueId?: string;
246
+ linearIssueIdentifier?: string;
247
+ linearIssueUrl?: string;
248
+ linearParentIssueId?: string;
249
+ /** ISO date-time of last task checklist sync to Linear. */
250
+ linearTaskChecklistSyncedAt?: string;
251
+ /**
252
+ * Last agreed checkbox state for this file, compact: `1.0:1,1.1:0,2.0:1` (sorted by id).
253
+ * Used for three-way sync between local markdown and the Linear tasklist issue.
254
+ */
255
+ linearChecklistReconciled?: string;
256
+ /** Set when the containing epic's strategy is `'milestone-of'`. */
257
+ linearProjectMilestoneId?: string;
258
+ /** Set when the containing epic's strategy is `'label-on'`. */
259
+ linearLabelIds?: string[];
92
260
  }
93
261
  export type BacklogPriority = 'critical' | 'high' | 'medium' | 'low';
94
262
  export type BacklogStatus = 'open' | 'promoted' | 'closed';
@@ -100,6 +268,23 @@ export interface BacklogItem extends BaseArtifact {
100
268
  description: string;
101
269
  acceptanceCriteria?: string;
102
270
  notes?: string;
271
+ /**
272
+ * Optional parent epic link. When set, `planr linear push` attaches this
273
+ * backlog item to the epic's Linear container (project / milestone / label)
274
+ * instead of the standalone bucket.
275
+ */
276
+ epicId?: string;
277
+ linearIssueId?: string;
278
+ linearIssueIdentifier?: string;
279
+ linearIssueUrl?: string;
280
+ /** Set when the containing epic's strategy is `'milestone-of'`. */
281
+ linearProjectMilestoneId?: string;
282
+ /** Set when the containing epic's strategy is `'label-on'` — includes the `backlog` label plus any epic label. */
283
+ linearLabelIds?: string[];
284
+ /** Last reconciled status, used as `base` in the three-way status merge. */
285
+ linearStatusReconciled?: string;
286
+ /** ISO date-time of the last status reconciliation with Linear. */
287
+ linearStatusSyncedAt?: string;
103
288
  }
104
289
  export interface Sprint extends BaseArtifact {
105
290
  name: string;
@@ -327,11 +512,11 @@ export type ReviseAuditFormat = 'md' | 'json';
327
512
  * revise run. Superset of the agent's `ReviseAction` so we can also record
328
513
  * human overrides (skipped / quit) and system outcomes (failed / demoted).
329
514
  */
330
- export type ReviseAuditOutcome = 'applied' | 'would-apply' | 'skipped-by-agent' | 'skipped-by-user' | 'flagged' | 'failed' | 'demoted';
515
+ export type ReviseAuditOutcome = 'applied' | 'would-apply' | 'unchanged-by-agent' | 'skipped-by-agent' | 'skipped-by-user' | 'flagged' | 'failed' | 'demoted' | 'applied-from-plan' | 'stale-skipped' | 'conflict-skipped';
331
516
  /**
332
517
  * One row in the revise audit log. Flushed to disk as soon as it is
333
- * produced (FEAT-012 §4.1) so an interrupted run still leaves an accurate
334
- * on-disk record of what was written.
518
+ * produced so an interrupted run still leaves an accurate on-disk record
519
+ * of what was written.
335
520
  */
336
521
  export interface ReviseAuditEntry {
337
522
  artifactId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/models/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/models/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GACpB,MAAM,GACN,SAAS,GACT,OAAO,GACP,MAAM,GACN,OAAO,GACP,SAAS,GACT,QAAQ,GACR,KAAK,GACL,WAAW,CAAC;AAChB,MAAM,MAAM,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AACtD,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,aAAa,GAAG,MAAM,CAAC;AAC5D,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAC/D,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE5D;;;;GAIG;AACH,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG,cAAc,GAAG,UAAU,CAAC;AAE5E,MAAM,WAAW,QAAQ;IACvB,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;GAKG;AACH,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,mEAAmE;IACnE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,8EAA8E;IAC9E,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,mBAAmB,CAAC,EAAE,qBAAqB,CAAC;IAC5C;;;;;;;OAOG;IACH,UAAU,CAAC,EAAE;QACX,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,8DAA8D;IAC9D,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,MAAM,MAAM,yBAAyB,GACjC,SAAS,GACT,WAAW,GACX,QAAQ,GACR,aAAa,GACb,QAAQ,CAAC;AAEb,yDAAyD;AACzD,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,qDAAqD;IACrD,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;CAC5C;AAED,+DAA+D;AAC/D,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,SAAS,CAAC;IAClE,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,cAAc,EAAE,MAAM,CAAC;IACvB,4BAA4B;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,WAAW,EAAE;QACX,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf;;;;;;;WAOG;QACH,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,EAAE,CAAC,EAAE,QAAQ,CAAC;IACd,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,0DAA0D;IAC1D,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,yCAAyC;IACzC,YAAY,CAAC,EAAE;QACb,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,8FAA8F;QAC9F,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,qFAAqF;QACrF,wBAAwB,CAAC,EAAE,MAAM,EAAE,CAAC;KACrC,CAAC;IACF,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,iEAAiE;IACjE,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,IAAK,SAAQ,YAAY;IACxC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,uEAAuE;IACvE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kEAAkE;IAClE,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,4EAA4E;IAC5E,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,OAAQ,SAAQ,YAAY;IAC3C,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,qEAAqE;IACrE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+DAA+D;IAC/D,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,2DAA2D;IAC3D,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mEAAmE;IACnE,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,SAAU,SAAQ,YAAY;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sDAAsD;IACtD,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mEAAmE;IACnE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,4EAA4E;IAC5E,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mEAAmE;IACnE,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,UAAU,CAAC;IACnB,QAAQ,EAAE,QAAQ,EAAE,CAAC;CACtB;AAED,MAAM,WAAW,QAAS,SAAQ,YAAY;IAC5C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,2DAA2D;IAC3D,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,mEAAmE;IACnE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,+DAA+D;IAC/D,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AACrE,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC;AAC3D,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAE3D,MAAM,WAAW,WAAY,SAAQ,YAAY;IAC/C,QAAQ,EAAE,eAAe,CAAC;IAC1B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,aAAa,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,mEAAmE;IACnE,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,kHAAkH;IAClH,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,4EAA4E;IAC5E,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,mEAAmE;IACnE,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,MAAO,SAAQ,YAAY;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,EAAE,SAAS,EAAE,CAAC;IACrB,KAAK,EAAE,QAAQ,EAAE,CAAC;CACnB;AAED,uDAAuD;AACvD,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAMD,MAAM,MAAM,qBAAqB,GAC7B,QAAQ,GACR,QAAQ,GACR,WAAW,GACX,SAAS,GACT,OAAO,GACP,SAAS,CAAC;AAEd,MAAM,MAAM,uBAAuB,GAAG,UAAU,GAAG,MAAM,CAAC;AAE1D,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,YAAY,EAAE,wBAAwB,EAAE,CAAC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;CACxD;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,yEAAyE;AACzE,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,qBAAqB,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,SAAS,EAAE;QACT,KAAK,EAAE,kBAAkB,EAAE,CAAC;QAC5B,QAAQ,EAAE,kBAAkB,EAAE,CAAC;QAC/B,OAAO,EAAE,kBAAkB,EAAE,CAAC;QAC9B,KAAK,EAAE,kBAAkB,EAAE,CAAC;KAC7B,CAAC;IACF,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,sDAAsD;IACtD,YAAY,EAAE;QACZ,QAAQ,EAAE,OAAO,CAAC;QAClB,QAAQ,EAAE,OAAO,CAAC;QAClB,kBAAkB,EAAE,OAAO,CAAC;KAC7B,CAAC;IACF,+DAA+D;IAC/D,QAAQ,EAAE,kBAAkB,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,GAAG,cAAc,GAAG,UAAU,CAAC;IAC7C,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,EAAE,EAAE,OAAO,CAAC;IACZ,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,eAAe;IAC9B,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd;AAMD,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAExD,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACvC;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,EAAE,gBAAgB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,sBAAsB,EAAE,CAAC;IAChC,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC;AAMD,MAAM,MAAM,mBAAmB,GAAG,cAAc,GAAG,OAAO,GAAG,OAAO,GAAG,MAAM,CAAC;AAE9E,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,mBAAmB,CAAC;IAC7B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,uBAAuB,CAAC;IAChC,gEAAgE;IAChE,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAMD,MAAM,MAAM,kBAAkB,GAAG,MAAM,GAAG,WAAW,GAAG,YAAY,GAAG,MAAM,GAAG,OAAO,CAAC;AAExF,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AASD,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAEtD;;;;;;;;GAQG;AACH,MAAM,MAAM,kBAAkB,GAC1B,aAAa,GACb,aAAa,GACb,YAAY,GACZ,kBAAkB,GAClB,cAAc,GACd,cAAc,CAAC;AAEnB,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,kBAAkB,CAAC;IACzB,0EAA0E;IAC1E,GAAG,EAAE,MAAM,CAAC;IACZ,8EAA8E;IAC9E,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,4DAA4D;IAC5D,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,YAAY,CAAC;IACrB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,8FAA8F;IAC9F,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,gGAAgG;IAChG,SAAS,EAAE,eAAe,EAAE,CAAC;CAC9B;AAED,+BAA+B;AAC/B,MAAM,MAAM,iBAAiB,GAAG,IAAI,GAAG,MAAM,CAAC;AAE9C;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAC1B,SAAS,GACT,aAAa,GACb,oBAAoB,GACpB,kBAAkB,GAClB,iBAAiB,GACjB,SAAS,GACT,QAAQ,GACR,SAAS,GACT,mBAAmB,GACnB,eAAe,GACf,kBAAkB,CAAC;AAEvB;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,kBAAkB,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,iFAAiF;IACjF,YAAY,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;IACzD,6FAA6F;IAC7F,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,2DAA2D;AAC3D,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,+DAA+D;IAC/D,WAAW,CAAC,EAAE;QACZ,MAAM,EAAE,GAAG,GAAG,QAAQ,GAAG,aAAa,GAAG,gBAAgB,CAAC;QAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,UAAU,CAAC,EAAE;QACX,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,YAAY,CAAC;IACnB,KAAK,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAC;IACjD,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,mEAAmE;IACnE,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;IACzC,0FAA0F;IAC1F,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B"}
@@ -48,4 +48,8 @@ export declare function gatherStoryArtifacts(projectDir: string, config: OpenPla
48
48
  * Used by `--feature` flag.
49
49
  */
50
50
  export declare function gatherFeatureArtifacts(projectDir: string, config: OpenPlanrConfig, featureId: string): Promise<TasksPromptContext>;
51
+ /**
52
+ * Read a gherkin file for a given story ID. Returns content or null.
53
+ */
54
+ export declare function findGherkinContent(projectDir: string, config: OpenPlanrConfig, storyId: string): Promise<string | null>;
51
55
  //# sourceMappingURL=artifact-gathering.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"artifact-gathering.d.ts","sourceRoot":"","sources":["../../src/services/artifact-gathering.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAU1D,MAAM,WAAW,kBAAkB;IACjC,uDAAuD;IACvD,OAAO,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5C,+CAA+C;IAC/C,gBAAgB,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9D,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,IAAI,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7C,2EAA2E;IAC3E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,OAAO,mCAAmC,EAAE,eAAe,CAAC;IACjF,8CAA8C;IAC9C,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CACzE;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,kBAAkB,CAAC,CA2C7B;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,kBAAkB,CAAC,CAqD7B"}
1
+ {"version":3,"file":"artifact-gathering.d.ts","sourceRoot":"","sources":["../../src/services/artifact-gathering.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAU1D,MAAM,WAAW,kBAAkB;IACjC,uDAAuD;IACvD,OAAO,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5C,+CAA+C;IAC/C,gBAAgB,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9D,mCAAmC;IACnC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,IAAI,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7C,2EAA2E;IAC3E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,OAAO,mCAAmC,EAAE,eAAe,CAAC;IACjF,8CAA8C;IAC9C,KAAK,CAAC,EAAE;QAAE,IAAI,EAAE,SAAS,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,IAAI,EAAE,OAAO,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CACzE;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,kBAAkB,CAAC,CA2C7B;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CAC1C,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,eAAe,EACvB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,kBAAkB,CAAC,CAqD7B;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,eAAe,EACvB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAKxB"}
@@ -103,7 +103,7 @@ export async function gatherFeatureArtifacts(projectDir, config, featureId) {
103
103
  /**
104
104
  * Read a gherkin file for a given story ID. Returns content or null.
105
105
  */
106
- async function findGherkinContent(projectDir, config, storyId) {
106
+ export async function findGherkinContent(projectDir, config, storyId) {
107
107
  const storyDir = path.join(projectDir, getArtifactDir(config, 'story'));
108
108
  const files = await listFiles(storyDir, new RegExp(`^${storyId}-gherkin\\.feature$`));
109
109
  if (files.length === 0)
@@ -1 +1 @@
1
- {"version":3,"file":"artifact-gathering.js","sourceRoot":"","sources":["../../src/services/artifact-gathering.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"artifact-gathering.js","sourceRoot":"","sources":["../../src/services/artifact-gathering.ts"],"names":[],"mappings":"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"}
@@ -12,7 +12,18 @@ export declare function listArtifacts(projectDir: string, config: OpenPlanrConfi
12
12
  title: string;
13
13
  filename: string;
14
14
  }>>;
15
- /** Read and parse an artifact's frontmatter and markdown body by ID. Returns null if not found. */
15
+ /**
16
+ * Read and parse an artifact's frontmatter and markdown body by ID.
17
+ *
18
+ * Returns `null` in two cases — both treated identically by callers:
19
+ * 1. The file doesn't exist.
20
+ * 2. The file exists but its frontmatter can't be parsed (malformed YAML,
21
+ * duplicate keys, stray `---` markers, etc.). A clear warning is emitted
22
+ * so the operator knows which file is broken and why; batch commands
23
+ * (`planr linear push`, `status`, `sync`) continue past the skip
24
+ * instead of aborting the whole run. The warning is deduped per file
25
+ * so re-reading the same broken file doesn't log twice.
26
+ */
16
27
  export declare function readArtifact(projectDir: string, config: OpenPlanrConfig, type: ArtifactType, id: string): Promise<{
17
28
  data: ArtifactFrontmatter;
18
29
  content: string;
@@ -1 +1 @@
1
- {"version":3,"file":"artifact-service.d.ts","sourceRoot":"","sources":["../../src/services/artifact-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"artifact-service.d.ts","sourceRoot":"","sources":["../../src/services/artifact-service.ts"],"names":[],"mappings":"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"}