openplanr 1.2.7 → 1.3.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 (164) hide show
  1. package/README.md +41 -4
  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 +48 -0
  6. package/dist/ai/prompts/prompt-builder.d.ts.map +1 -1
  7. package/dist/ai/prompts/prompt-builder.js +57 -1
  8. package/dist/ai/prompts/prompt-builder.js.map +1 -1
  9. package/dist/ai/prompts/system-prompts.d.ts +24 -1
  10. package/dist/ai/prompts/system-prompts.d.ts.map +1 -1
  11. package/dist/ai/prompts/system-prompts.js +104 -6
  12. package/dist/ai/prompts/system-prompts.js.map +1 -1
  13. package/dist/ai/schemas/ai-response-schemas.d.ts +68 -0
  14. package/dist/ai/schemas/ai-response-schemas.d.ts.map +1 -1
  15. package/dist/ai/schemas/ai-response-schemas.js +81 -0
  16. package/dist/ai/schemas/ai-response-schemas.js.map +1 -1
  17. package/dist/ai/types.d.ts +2 -0
  18. package/dist/ai/types.d.ts.map +1 -1
  19. package/dist/ai/types.js +4 -0
  20. package/dist/ai/types.js.map +1 -1
  21. package/dist/cli/commands/backlog.d.ts +12 -0
  22. package/dist/cli/commands/backlog.d.ts.map +1 -1
  23. package/dist/cli/commands/backlog.js +88 -2
  24. package/dist/cli/commands/backlog.js.map +1 -1
  25. package/dist/cli/commands/config.d.ts.map +1 -1
  26. package/dist/cli/commands/config.js +8 -2
  27. package/dist/cli/commands/config.js.map +1 -1
  28. package/dist/cli/commands/linear.d.ts +8 -0
  29. package/dist/cli/commands/linear.d.ts.map +1 -0
  30. package/dist/cli/commands/linear.js +550 -0
  31. package/dist/cli/commands/linear.js.map +1 -0
  32. package/dist/cli/commands/quick.d.ts +17 -0
  33. package/dist/cli/commands/quick.d.ts.map +1 -1
  34. package/dist/cli/commands/quick.js +31 -15
  35. package/dist/cli/commands/quick.js.map +1 -1
  36. package/dist/cli/commands/revise.d.ts +24 -0
  37. package/dist/cli/commands/revise.d.ts.map +1 -0
  38. package/dist/cli/commands/revise.js +570 -0
  39. package/dist/cli/commands/revise.js.map +1 -0
  40. package/dist/cli/index.js +4 -0
  41. package/dist/cli/index.js.map +1 -1
  42. package/dist/models/schema.d.ts +43 -0
  43. package/dist/models/schema.d.ts.map +1 -1
  44. package/dist/models/schema.js +49 -0
  45. package/dist/models/schema.js.map +1 -1
  46. package/dist/models/types.d.ts +296 -0
  47. package/dist/models/types.d.ts.map +1 -1
  48. package/dist/services/artifact-gathering.d.ts +4 -0
  49. package/dist/services/artifact-gathering.d.ts.map +1 -1
  50. package/dist/services/artifact-gathering.js +1 -1
  51. package/dist/services/artifact-gathering.js.map +1 -1
  52. package/dist/services/artifact-service.d.ts +12 -1
  53. package/dist/services/artifact-service.d.ts.map +1 -1
  54. package/dist/services/artifact-service.js +49 -6
  55. package/dist/services/artifact-service.js.map +1 -1
  56. package/dist/services/atomic-write-service.d.ts +41 -0
  57. package/dist/services/atomic-write-service.d.ts.map +1 -0
  58. package/dist/services/atomic-write-service.js +87 -0
  59. package/dist/services/atomic-write-service.js.map +1 -0
  60. package/dist/services/audit-log-service.d.ts +47 -0
  61. package/dist/services/audit-log-service.d.ts.map +1 -0
  62. package/dist/services/audit-log-service.js +210 -0
  63. package/dist/services/audit-log-service.js.map +1 -0
  64. package/dist/services/cascade-service.d.ts +62 -0
  65. package/dist/services/cascade-service.d.ts.map +1 -0
  66. package/dist/services/cascade-service.js +189 -0
  67. package/dist/services/cascade-service.js.map +1 -0
  68. package/dist/services/credentials-service.js +2 -2
  69. package/dist/services/credentials-service.js.map +1 -1
  70. package/dist/services/diff-service.d.ts +18 -0
  71. package/dist/services/diff-service.d.ts.map +1 -0
  72. package/dist/services/diff-service.js +35 -0
  73. package/dist/services/diff-service.js.map +1 -0
  74. package/dist/services/evidence-verifier.d.ts +71 -0
  75. package/dist/services/evidence-verifier.d.ts.map +1 -0
  76. package/dist/services/evidence-verifier.js +174 -0
  77. package/dist/services/evidence-verifier.js.map +1 -0
  78. package/dist/services/git-service.d.ts +60 -0
  79. package/dist/services/git-service.d.ts.map +1 -0
  80. package/dist/services/git-service.js +137 -0
  81. package/dist/services/git-service.js.map +1 -0
  82. package/dist/services/graph-integrity.d.ts +35 -0
  83. package/dist/services/graph-integrity.d.ts.map +1 -0
  84. package/dist/services/graph-integrity.js +53 -0
  85. package/dist/services/graph-integrity.js.map +1 -0
  86. package/dist/services/linear/body-formatters.d.ts +69 -0
  87. package/dist/services/linear/body-formatters.d.ts.map +1 -0
  88. package/dist/services/linear/body-formatters.js +183 -0
  89. package/dist/services/linear/body-formatters.js.map +1 -0
  90. package/dist/services/linear/constants.d.ts +61 -0
  91. package/dist/services/linear/constants.d.ts.map +1 -0
  92. package/dist/services/linear/constants.js +84 -0
  93. package/dist/services/linear/constants.js.map +1 -0
  94. package/dist/services/linear/errors.d.ts +14 -0
  95. package/dist/services/linear/errors.d.ts.map +1 -0
  96. package/dist/services/linear/errors.js +106 -0
  97. package/dist/services/linear/errors.js.map +1 -0
  98. package/dist/services/linear/estimate-resolver.d.ts +50 -0
  99. package/dist/services/linear/estimate-resolver.d.ts.map +1 -0
  100. package/dist/services/linear/estimate-resolver.js +82 -0
  101. package/dist/services/linear/estimate-resolver.js.map +1 -0
  102. package/dist/services/linear/plan-builders.d.ts +64 -0
  103. package/dist/services/linear/plan-builders.d.ts.map +1 -0
  104. package/dist/services/linear/plan-builders.js +237 -0
  105. package/dist/services/linear/plan-builders.js.map +1 -0
  106. package/dist/services/linear/scope-loaders.d.ts +79 -0
  107. package/dist/services/linear/scope-loaders.d.ts.map +1 -0
  108. package/dist/services/linear/scope-loaders.js +227 -0
  109. package/dist/services/linear/scope-loaders.js.map +1 -0
  110. package/dist/services/linear/strategy-context.d.ts +66 -0
  111. package/dist/services/linear/strategy-context.d.ts.map +1 -0
  112. package/dist/services/linear/strategy-context.js +121 -0
  113. package/dist/services/linear/strategy-context.js.map +1 -0
  114. package/dist/services/linear-mapping-service.d.ts +11 -0
  115. package/dist/services/linear-mapping-service.d.ts.map +1 -0
  116. package/dist/services/linear-mapping-service.js +220 -0
  117. package/dist/services/linear-mapping-service.js.map +1 -0
  118. package/dist/services/linear-pull-service.d.ts +137 -0
  119. package/dist/services/linear-pull-service.d.ts.map +1 -0
  120. package/dist/services/linear-pull-service.js +720 -0
  121. package/dist/services/linear-pull-service.js.map +1 -0
  122. package/dist/services/linear-push-service.d.ts +86 -0
  123. package/dist/services/linear-push-service.d.ts.map +1 -0
  124. package/dist/services/linear-push-service.js +956 -0
  125. package/dist/services/linear-push-service.js.map +1 -0
  126. package/dist/services/linear-service.d.ts +122 -0
  127. package/dist/services/linear-service.d.ts.map +1 -0
  128. package/dist/services/linear-service.js +361 -0
  129. package/dist/services/linear-service.js.map +1 -0
  130. package/dist/services/prompt-service.d.ts +37 -0
  131. package/dist/services/prompt-service.d.ts.map +1 -1
  132. package/dist/services/prompt-service.js +111 -0
  133. package/dist/services/prompt-service.js.map +1 -1
  134. package/dist/services/revise-apply-service.d.ts +55 -0
  135. package/dist/services/revise-apply-service.d.ts.map +1 -0
  136. package/dist/services/revise-apply-service.js +255 -0
  137. package/dist/services/revise-apply-service.js.map +1 -0
  138. package/dist/services/revise-cache-service.d.ts +46 -0
  139. package/dist/services/revise-cache-service.d.ts.map +1 -0
  140. package/dist/services/revise-cache-service.js +88 -0
  141. package/dist/services/revise-cache-service.js.map +1 -0
  142. package/dist/services/revise-plan-service.d.ts +38 -0
  143. package/dist/services/revise-plan-service.d.ts.map +1 -0
  144. package/dist/services/revise-plan-service.js +151 -0
  145. package/dist/services/revise-plan-service.js.map +1 -0
  146. package/dist/services/revise-service.d.ts +115 -0
  147. package/dist/services/revise-service.d.ts.map +1 -0
  148. package/dist/services/revise-service.js +294 -0
  149. package/dist/services/revise-service.js.map +1 -0
  150. package/dist/services/template-sections.d.ts +28 -0
  151. package/dist/services/template-sections.d.ts.map +1 -0
  152. package/dist/services/template-sections.js +55 -0
  153. package/dist/services/template-sections.js.map +1 -0
  154. package/dist/templates/backlog/backlog-item.md.hbs +3 -0
  155. package/dist/templates/quick/quick-task.md.hbs +6 -0
  156. package/dist/utils/diff.d.ts +47 -0
  157. package/dist/utils/diff.d.ts.map +1 -0
  158. package/dist/utils/diff.js +278 -0
  159. package/dist/utils/diff.js.map +1 -0
  160. package/dist/utils/markdown.d.ts +23 -0
  161. package/dist/utils/markdown.d.ts.map +1 -1
  162. package/dist/utils/markdown.js +79 -0
  163. package/dist/utils/markdown.js.map +1 -1
  164. package/package.json +3 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linear-push-service.js","sourceRoot":"","sources":["../../src/services/linear-push-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,122 @@
1
+ /**
2
+ * Linear API wrapper — auth + SDK mutations wrapped with retry, error
3
+ * mapping, and input-safety guards. Constants/validators live in
4
+ * `linear/constants.ts`; retry + error mapping in `linear/errors.ts`.
5
+ */
6
+ import { LinearClient } from '@linear/sdk';
7
+ type LinearIssueCreate = Parameters<LinearClient['createIssue']>[0];
8
+ type LinearIssueUpdate = Parameters<LinearClient['updateIssue']>[1];
9
+ type LinearProjectCreate = Parameters<LinearClient['createProject']>[0];
10
+ type LinearProjectUpdate = Parameters<LinearClient['updateProject']>[1];
11
+ type LinearProjectMilestoneCreate = Parameters<LinearClient['createProjectMilestone']>[0];
12
+ export { isLikelyLinearIssueId, isLikelyLinearWorkflowStateId, LINEAR_CREDENTIAL_KEY, } from './linear/constants.js';
13
+ export { mapLinearError, withLinearRetry } from './linear/errors.js';
14
+ export interface LinearViewerSummary {
15
+ id: string;
16
+ name: string;
17
+ email?: string;
18
+ }
19
+ export interface LinearTeamOption {
20
+ id: string;
21
+ name: string;
22
+ key: string;
23
+ }
24
+ export interface LinearProjectSummary {
25
+ id: string;
26
+ identifier: string;
27
+ name: string;
28
+ url: string;
29
+ }
30
+ export interface LinearIssueSummary {
31
+ id: string;
32
+ identifier: string;
33
+ url: string;
34
+ }
35
+ export interface LinearMilestoneSummary {
36
+ id: string;
37
+ name: string;
38
+ }
39
+ export interface LinearLabelSummary {
40
+ id: string;
41
+ name: string;
42
+ }
43
+ export declare function createLinearClient(apiKey: string): LinearClient;
44
+ export declare function createLinearProject(client: LinearClient, input: LinearProjectCreate): Promise<LinearProjectSummary>;
45
+ export declare function updateLinearProject(client: LinearClient, projectId: string, input: LinearProjectUpdate): Promise<LinearProjectSummary>;
46
+ export declare function createLinearIssue(client: LinearClient, input: LinearIssueCreate): Promise<LinearIssueSummary>;
47
+ export declare function updateLinearIssue(client: LinearClient, issueId: string, input: LinearIssueUpdate): Promise<LinearIssueSummary>;
48
+ /**
49
+ * Create a new ProjectMilestone inside an existing Linear project. Returned
50
+ * id is what we store on the epic's `linearMilestoneId` and propagate as
51
+ * `projectMilestoneId` on every descendant issue.
52
+ */
53
+ export declare function createProjectMilestone(client: LinearClient, input: LinearProjectMilestoneCreate): Promise<LinearMilestoneSummary>;
54
+ /**
55
+ * Idempotent team-scoped label creation. Looks up an existing label by exact
56
+ * name + team before creating, so re-running push is a no-op on the label
57
+ * side. Matches the "Push re-applies the label idempotently" contract.
58
+ */
59
+ export declare function ensureIssueLabel(client: LinearClient, input: {
60
+ teamId: string;
61
+ name: string;
62
+ color?: string;
63
+ description?: string;
64
+ }): Promise<LinearLabelSummary>;
65
+ /**
66
+ * List the team's projects so the user can pick a target for
67
+ * `milestone-of` / `label-on` mapping strategies.
68
+ */
69
+ export declare function getTeamProjects(client: LinearClient, teamId: string, limit?: number): Promise<Array<{
70
+ id: string;
71
+ name: string;
72
+ url: string;
73
+ }>>;
74
+ /**
75
+ * One team workflow state — the minimum Linear metadata we need to auto-map
76
+ * OpenPlanr statuses to state UUIDs when the user hasn't configured
77
+ * `linear.pushStateIds`.
78
+ *
79
+ * `type` is Linear's canonical classification (`backlog` / `unstarted` /
80
+ * `started` / `completed` / `canceled`) and is robust against teams renaming
81
+ * states — unlike `name`, which varies per team.
82
+ */
83
+ export interface LinearWorkflowStateSummary {
84
+ id: string;
85
+ name: string;
86
+ type: string;
87
+ }
88
+ /**
89
+ * Fetch the team's workflow states in one round-trip. Used by `planr linear
90
+ * push` to auto-derive a status→stateId map when the user has no explicit
91
+ * `linear.pushStateIds` config.
92
+ */
93
+ export declare function fetchTeamWorkflowStates(client: LinearClient, teamId: string): Promise<LinearWorkflowStateSummary[]>;
94
+ /**
95
+ * Fetch the team's `issueEstimationType` in one round-trip. Used by `planr
96
+ * linear push` to decide whether (and how) to map OpenPlanr `storyPoints` to
97
+ * Linear's native estimate field.
98
+ *
99
+ * Returns `'notUsed'` when the team has estimation disabled — push then
100
+ * skips the field silently.
101
+ */
102
+ export declare function fetchTeamIssueEstimationType(client: LinearClient, teamId: string): Promise<string>;
103
+ /**
104
+ * Batched: load each issue's current workflow state **name** (one GraphQL
105
+ * round-trip per chunk).
106
+ */
107
+ export declare function fetchLinearIssueStateNames(client: LinearClient, issueIds: string[]): Promise<Map<string, string>>;
108
+ export declare function getLinearIssueDescription(client: LinearClient, issueId: string): Promise<string>;
109
+ /** Resolves the current user; throws if the token is invalid or lacks API access. */
110
+ export declare function validateToken(client: LinearClient): Promise<LinearViewerSummary>;
111
+ /** Teams the authenticated user can access (first page, up to 100). */
112
+ export declare function getAvailableTeams(client: LinearClient): Promise<LinearTeamOption[]>;
113
+ /**
114
+ * Verifies the team exists and the token can read it (incl. project listing).
115
+ * Catches inaccessible teams and read failures before write mutations fail
116
+ * mid-flight with confusing GraphQL errors.
117
+ */
118
+ export declare function validateTeamAccess(client: LinearClient, teamId: string): Promise<{
119
+ name: string;
120
+ key: string;
121
+ }>;
122
+ //# sourceMappingURL=linear-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linear-service.d.ts","sourceRoot":"","sources":["../../src/services/linear-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,361 @@
1
+ /**
2
+ * Linear API wrapper — auth + SDK mutations wrapped with retry, error
3
+ * mapping, and input-safety guards. Constants/validators live in
4
+ * `linear/constants.ts`; retry + error mapping in `linear/errors.ts`.
5
+ */
6
+ import { LinearClient } from '@linear/sdk';
7
+ import { LINEAR_FIELD_LIMITS, requireNonEmpty, truncateForLinear } from './linear/constants.js';
8
+ import { mapLinearError, withLinearRetry } from './linear/errors.js';
9
+ export { isLikelyLinearIssueId, isLikelyLinearWorkflowStateId, LINEAR_CREDENTIAL_KEY, } from './linear/constants.js';
10
+ export { mapLinearError, withLinearRetry } from './linear/errors.js';
11
+ export function createLinearClient(apiKey) {
12
+ return new LinearClient({ apiKey });
13
+ }
14
+ // ---------------------------------------------------------------------------
15
+ // Project / Issue / Milestone / Label mutations
16
+ // ---------------------------------------------------------------------------
17
+ export async function createLinearProject(client, input) {
18
+ const safeInput = {
19
+ ...input,
20
+ name: truncateForLinear(requireNonEmpty(input.name, 'Linear project name'), LINEAR_FIELD_LIMITS.projectName, 'Linear project name'),
21
+ ...(typeof input.description === 'string'
22
+ ? {
23
+ description: truncateForLinear(input.description, LINEAR_FIELD_LIMITS.projectDescription, 'Linear project description'),
24
+ }
25
+ : {}),
26
+ };
27
+ return withLinearRetry('create project', async () => {
28
+ const payload = await client.createProject(safeInput);
29
+ if (!payload?.success) {
30
+ throw new Error('Linear did not return success when creating a project.');
31
+ }
32
+ const id = payload.projectId;
33
+ if (!id) {
34
+ throw new Error('Linear did not return a project id when creating a project.');
35
+ }
36
+ const project = await client.project(id);
37
+ if (!project) {
38
+ throw new Error('Failed to load the created project from Linear.');
39
+ }
40
+ return {
41
+ id: project.id,
42
+ identifier: project.slugId,
43
+ name: project.name,
44
+ url: project.url,
45
+ };
46
+ });
47
+ }
48
+ export async function updateLinearProject(client, projectId, input) {
49
+ const safeInput = {
50
+ ...input,
51
+ ...(typeof input.name === 'string'
52
+ ? {
53
+ name: truncateForLinear(requireNonEmpty(input.name, 'Linear project name'), LINEAR_FIELD_LIMITS.projectName, 'Linear project name'),
54
+ }
55
+ : {}),
56
+ ...(typeof input.description === 'string'
57
+ ? {
58
+ description: truncateForLinear(input.description, LINEAR_FIELD_LIMITS.projectDescription, 'Linear project description'),
59
+ }
60
+ : {}),
61
+ };
62
+ return withLinearRetry('update project', async () => {
63
+ const payload = await client.updateProject(projectId, safeInput);
64
+ if (!payload?.success) {
65
+ throw new Error('Linear did not return success when updating a project.');
66
+ }
67
+ const project = await client.project(projectId);
68
+ if (!project) {
69
+ throw new Error('Failed to load the updated project from Linear.');
70
+ }
71
+ return {
72
+ id: project.id,
73
+ identifier: project.slugId,
74
+ name: project.name,
75
+ url: project.url,
76
+ };
77
+ });
78
+ }
79
+ export async function createLinearIssue(client, input) {
80
+ const safeInput = {
81
+ ...input,
82
+ title: truncateForLinear(requireNonEmpty(input.title, 'Linear issue title'), LINEAR_FIELD_LIMITS.issueTitle, 'Linear issue title'),
83
+ ...(typeof input.description === 'string'
84
+ ? {
85
+ description: truncateForLinear(input.description, LINEAR_FIELD_LIMITS.issueDescription, 'Linear issue description'),
86
+ }
87
+ : {}),
88
+ };
89
+ return withLinearRetry('create issue', async () => {
90
+ const payload = await client.createIssue(safeInput);
91
+ if (!payload?.success) {
92
+ throw new Error('Linear did not return success when creating an issue.');
93
+ }
94
+ const id = payload.issueId;
95
+ if (!id) {
96
+ throw new Error('Linear did not return an issue id when creating an issue.');
97
+ }
98
+ const issue = await client.issue(id);
99
+ if (!issue) {
100
+ throw new Error('Failed to load the created issue from Linear.');
101
+ }
102
+ return {
103
+ id: issue.id,
104
+ identifier: issue.identifier,
105
+ url: issue.url,
106
+ };
107
+ });
108
+ }
109
+ export async function updateLinearIssue(client, issueId, input) {
110
+ const safeInput = {
111
+ ...input,
112
+ ...(typeof input.title === 'string'
113
+ ? {
114
+ title: truncateForLinear(requireNonEmpty(input.title, 'Linear issue title'), LINEAR_FIELD_LIMITS.issueTitle, 'Linear issue title'),
115
+ }
116
+ : {}),
117
+ ...(typeof input.description === 'string'
118
+ ? {
119
+ description: truncateForLinear(input.description, LINEAR_FIELD_LIMITS.issueDescription, 'Linear issue description'),
120
+ }
121
+ : {}),
122
+ };
123
+ return withLinearRetry('update issue', async () => {
124
+ const payload = await client.updateIssue(issueId, safeInput);
125
+ if (!payload?.success) {
126
+ throw new Error('Linear did not return success when updating an issue.');
127
+ }
128
+ const issue = await client.issue(issueId);
129
+ if (!issue) {
130
+ throw new Error('Failed to load the updated issue from Linear.');
131
+ }
132
+ return {
133
+ id: issue.id,
134
+ identifier: issue.identifier,
135
+ url: issue.url,
136
+ };
137
+ });
138
+ }
139
+ /**
140
+ * Create a new ProjectMilestone inside an existing Linear project. Returned
141
+ * id is what we store on the epic's `linearMilestoneId` and propagate as
142
+ * `projectMilestoneId` on every descendant issue.
143
+ */
144
+ export async function createProjectMilestone(client, input) {
145
+ const safeName = truncateForLinear(requireNonEmpty(input.name, 'Linear milestone name'), LINEAR_FIELD_LIMITS.milestoneName, 'Linear milestone name');
146
+ const safeInput = {
147
+ ...input,
148
+ name: safeName,
149
+ ...(typeof input.description === 'string'
150
+ ? {
151
+ description: truncateForLinear(input.description, LINEAR_FIELD_LIMITS.milestoneDescription, 'Linear milestone description'),
152
+ }
153
+ : {}),
154
+ };
155
+ return withLinearRetry('create milestone', async () => {
156
+ const payload = await client.createProjectMilestone(safeInput);
157
+ if (!payload?.success) {
158
+ throw new Error('Linear did not return success when creating a project milestone.');
159
+ }
160
+ const id = payload.projectMilestoneId;
161
+ if (!id) {
162
+ throw new Error('Linear did not return a milestone id when creating a project milestone.');
163
+ }
164
+ return { id, name: safeName };
165
+ });
166
+ }
167
+ /**
168
+ * Idempotent team-scoped label creation. Looks up an existing label by exact
169
+ * name + team before creating, so re-running push is a no-op on the label
170
+ * side. Matches the "Push re-applies the label idempotently" contract.
171
+ */
172
+ export async function ensureIssueLabel(client, input) {
173
+ const safeName = truncateForLinear(requireNonEmpty(input.name, 'Linear label name'), LINEAR_FIELD_LIMITS.labelName, 'Linear label name');
174
+ const safeDescription = typeof input.description === 'string'
175
+ ? truncateForLinear(input.description, LINEAR_FIELD_LIMITS.labelDescription, 'Linear label description')
176
+ : undefined;
177
+ return withLinearRetry('ensure label', async () => {
178
+ // Linear enforces label uniqueness **case-insensitively** and at the
179
+ // **workspace** level (not per-team): creating `feature` fails with
180
+ // "Label 'Feature' already exists in the workspace" when a capitalized
181
+ // version exists, even if it's owned by a different team. Our lookup
182
+ // must match Linear's own uniqueness rule or we'll try to create
183
+ // duplicates that the API rejects.
184
+ //
185
+ // Strategy:
186
+ // 1. Prefer a team-scoped match (usable for issue labels on this team).
187
+ // 2. Fall back to any workspace-wide match with the same name — adopt
188
+ // it as the label we'll apply. The issue can reference workspace
189
+ // labels across teams.
190
+ const teamScoped = await client.issueLabels({
191
+ filter: {
192
+ team: { id: { eq: input.teamId } },
193
+ name: { eqIgnoreCase: safeName },
194
+ },
195
+ first: 1,
196
+ });
197
+ const teamHit = teamScoped.nodes?.[0];
198
+ if (teamHit?.id) {
199
+ return { id: teamHit.id, name: teamHit.name };
200
+ }
201
+ const workspaceWide = await client.issueLabels({
202
+ filter: {
203
+ name: { eqIgnoreCase: safeName },
204
+ },
205
+ first: 1,
206
+ });
207
+ const workspaceHit = workspaceWide.nodes?.[0];
208
+ if (workspaceHit?.id) {
209
+ return { id: workspaceHit.id, name: workspaceHit.name };
210
+ }
211
+ const created = {
212
+ teamId: input.teamId,
213
+ name: safeName,
214
+ color: input.color,
215
+ ...(safeDescription !== undefined ? { description: safeDescription } : {}),
216
+ };
217
+ const payload = await client.createIssueLabel(created);
218
+ if (!payload?.success) {
219
+ throw new Error('Linear did not return success when creating an issue label.');
220
+ }
221
+ const id = payload.issueLabelId;
222
+ if (!id) {
223
+ throw new Error('Linear did not return a label id when creating an issue label.');
224
+ }
225
+ return { id, name: safeName };
226
+ });
227
+ }
228
+ /**
229
+ * List the team's projects so the user can pick a target for
230
+ * `milestone-of` / `label-on` mapping strategies.
231
+ */
232
+ export async function getTeamProjects(client, teamId, limit = 50) {
233
+ return withLinearRetry('list team projects', async () => {
234
+ const team = await client.team(teamId);
235
+ if (!team?.id) {
236
+ throw new Error(`Team ${teamId} was not found.`);
237
+ }
238
+ const projects = await team.projects({ first: limit });
239
+ return (projects.nodes ?? []).map((p) => ({ id: p.id, name: p.name, url: p.url }));
240
+ });
241
+ }
242
+ // ---------------------------------------------------------------------------
243
+ // Batched reads
244
+ // ---------------------------------------------------------------------------
245
+ const ISSUE_STATE_FETCH_CHUNK = 50;
246
+ /**
247
+ * Fetch the team's workflow states in one round-trip. Used by `planr linear
248
+ * push` to auto-derive a status→stateId map when the user has no explicit
249
+ * `linear.pushStateIds` config.
250
+ */
251
+ export async function fetchTeamWorkflowStates(client, teamId) {
252
+ return withLinearRetry('fetch team workflow states', async () => {
253
+ const team = await client.team(teamId);
254
+ const states = await team.states();
255
+ return states.nodes.map((s) => ({
256
+ id: s.id,
257
+ name: s.name,
258
+ type: s.type,
259
+ }));
260
+ });
261
+ }
262
+ /**
263
+ * Fetch the team's `issueEstimationType` in one round-trip. Used by `planr
264
+ * linear push` to decide whether (and how) to map OpenPlanr `storyPoints` to
265
+ * Linear's native estimate field.
266
+ *
267
+ * Returns `'notUsed'` when the team has estimation disabled — push then
268
+ * skips the field silently.
269
+ */
270
+ export async function fetchTeamIssueEstimationType(client, teamId) {
271
+ return withLinearRetry('fetch team estimation type', async () => {
272
+ const team = await client.team(teamId);
273
+ // Linear's SDK exposes this as `issueEstimationType` on Team; defensive
274
+ // fallback to `'notUsed'` keeps push safe when the team shape is
275
+ // unfamiliar (older SDK, mocked client, etc.).
276
+ const value = team.issueEstimationType;
277
+ return value ?? 'notUsed';
278
+ });
279
+ }
280
+ /**
281
+ * Batched: load each issue's current workflow state **name** (one GraphQL
282
+ * round-trip per chunk).
283
+ */
284
+ export async function fetchLinearIssueStateNames(client, issueIds) {
285
+ const out = new Map();
286
+ const unique = [...new Set(issueIds.map((i) => i.trim()).filter(Boolean))];
287
+ for (let i = 0; i < unique.length; i += ISSUE_STATE_FETCH_CHUNK) {
288
+ const chunk = unique.slice(i, i + ISSUE_STATE_FETCH_CHUNK);
289
+ const result = await withLinearRetry('fetch issue states', async () => {
290
+ const connection = await client.issues({
291
+ filter: { id: { in: chunk } },
292
+ first: chunk.length,
293
+ });
294
+ return connection;
295
+ });
296
+ for (const issue of result.nodes) {
297
+ const st = await issue.state;
298
+ const name = st?.name?.trim() ?? '';
299
+ if (name) {
300
+ out.set(issue.id, name);
301
+ }
302
+ }
303
+ }
304
+ return out;
305
+ }
306
+ export async function getLinearIssueDescription(client, issueId) {
307
+ return withLinearRetry('load issue', async () => {
308
+ const issue = await client.issue(issueId);
309
+ return issue?.description ?? '';
310
+ });
311
+ }
312
+ // ---------------------------------------------------------------------------
313
+ // Auth / team validation
314
+ // ---------------------------------------------------------------------------
315
+ /** Resolves the current user; throws if the token is invalid or lacks API access. */
316
+ export async function validateToken(client) {
317
+ try {
318
+ const user = await client.viewer;
319
+ if (!user?.id) {
320
+ throw new Error('Linear API returned an empty viewer — check your personal access token.');
321
+ }
322
+ return {
323
+ id: user.id,
324
+ name: user.name,
325
+ email: user.email,
326
+ };
327
+ }
328
+ catch (err) {
329
+ throw mapLinearError(err, 'validating token');
330
+ }
331
+ }
332
+ /** Teams the authenticated user can access (first page, up to 100). */
333
+ export async function getAvailableTeams(client) {
334
+ try {
335
+ const connection = await client.teams({ first: 100 });
336
+ const nodes = connection.nodes ?? [];
337
+ return nodes.map((t) => ({ id: t.id, name: t.name, key: t.key }));
338
+ }
339
+ catch (err) {
340
+ throw mapLinearError(err, 'loading teams');
341
+ }
342
+ }
343
+ /**
344
+ * Verifies the team exists and the token can read it (incl. project listing).
345
+ * Catches inaccessible teams and read failures before write mutations fail
346
+ * mid-flight with confusing GraphQL errors.
347
+ */
348
+ export async function validateTeamAccess(client, teamId) {
349
+ try {
350
+ const team = await client.team(teamId);
351
+ if (!team?.id) {
352
+ throw new Error(`Team ${teamId} was not found or your token cannot access it. Ensure the PAT has read scope for teams and projects.`);
353
+ }
354
+ await team.projects({ first: 1 });
355
+ return { name: team.name, key: team.key };
356
+ }
357
+ catch (err) {
358
+ throw mapLinearError(err, 'checking team access');
359
+ }
360
+ }
361
+ //# sourceMappingURL=linear-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linear-service.js","sourceRoot":"","sources":["../../src/services/linear-service.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import type { LinearClient } from '@linear/sdk';
2
+ import type { LinearMappingStrategy } from '../models/types.js';
1
3
  /** Prompt the user for a single line of text input. Falls back to defaultValue in non-interactive mode. */
2
4
  export declare function promptText(message: string, defaultValue?: string): Promise<string>;
3
5
  /** Prompt the user to select one option from a list. */
@@ -19,4 +21,39 @@ export declare function promptCheckbox<T extends string>(message: string, choice
19
21
  }>): Promise<T[]>;
20
22
  /** Prompt the user for comma-separated text values, returned as a trimmed array. */
21
23
  export declare function promptMultiText(message: string, hint?: string): Promise<string[]>;
24
+ /** One action the user can take at the diff-preview prompt for a proposed revise. */
25
+ export type ReviseConfirmAction = 'apply' | 'skip' | 'edit-rationale' | 'diff-again' | 'quit';
26
+ /**
27
+ * Prompt the user for the per-artifact revise confirmation menu. In
28
+ * non-interactive mode, returns `apply` by default (caller should only
29
+ * enter this path after the typed-YES gate in `confirmBulkRevise`).
30
+ */
31
+ export declare function promptReviseConfirm(artifactId: string): Promise<ReviseConfirmAction>;
32
+ /**
33
+ * First-time epic-push: offer the three mapping strategies and (for
34
+ * `milestone-of` / `label-on`) let the user pick an existing Linear project
35
+ * to attach into. Pure UI + one read-only SDK call (`getTeamProjects`).
36
+ */
37
+ export declare function promptMappingStrategy(client: LinearClient, teamId: string, epicId: string): Promise<{
38
+ strategy: LinearMappingStrategy;
39
+ targetProjectId?: string;
40
+ } | null>;
41
+ /**
42
+ * First-time QT / BL push: let the user pick the Linear project that will
43
+ * host `QT-*` and `BL-*` issues (stored in `linear.standaloneProjectId`).
44
+ */
45
+ export declare function promptStandaloneProject(client: LinearClient, teamId: string): Promise<{
46
+ projectId: string;
47
+ projectName: string;
48
+ } | null>;
49
+ /**
50
+ * Typed-YES confirmation gate for `--yes` bulk-apply runs.
51
+ *
52
+ * In an interactive TTY, prints the provided summary and blocks on the user
53
+ * typing "YES" (case-sensitive) to proceed. In non-TTY environments
54
+ * (piped stdout, CI), returns `true` unconditionally — the `--yes` flag
55
+ * alone is the contract with the pipeline, and PR review is the upstream
56
+ * human gate. Returns `false` if the user types anything other than "YES".
57
+ */
58
+ export declare function confirmBulkRevise(summary: string): Promise<boolean>;
22
59
  //# sourceMappingURL=prompt-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-service.d.ts","sourceRoot":"","sources":["../../src/services/prompt-service.ts"],"names":[],"mappings":"AAIA,2GAA2G;AAC3G,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASxF;AAED,wDAAwD;AACxD,wBAAsB,YAAY,CAAC,CAAC,SAAS,MAAM,EACjD,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC,EAC1C,YAAY,CAAC,EAAE,CAAC,GACf,OAAO,CAAC,CAAC,CAAC,CAOZ;AAED,iDAAiD;AACjD,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,UAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAM1F;AAED,gEAAgE;AAChE,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAW1F;AAED,kEAAkE;AAClE,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAMnE;AAED,uEAAuE;AACvE,wBAAsB,cAAc,CAAC,CAAC,SAAS,MAAM,EACnD,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAC5D,OAAO,CAAC,CAAC,EAAE,CAAC,CAOd;AAED,oFAAoF;AACpF,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAavF"}
1
+ {"version":3,"file":"prompt-service.d.ts","sourceRoot":"","sources":["../../src/services/prompt-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAKhE,2GAA2G;AAC3G,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASxF;AAED,wDAAwD;AACxD,wBAAsB,YAAY,CAAC,CAAC,SAAS,MAAM,EACjD,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,CAAC,EAC1C,YAAY,CAAC,EAAE,CAAC,GACf,OAAO,CAAC,CAAC,CAAC,CAOZ;AAED,iDAAiD;AACjD,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,UAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAM1F;AAED,gEAAgE;AAChE,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAW1F;AAED,kEAAkE;AAClE,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAMnE;AAED,uEAAuE;AACvE,wBAAsB,cAAc,CAAC,CAAC,SAAS,MAAM,EACnD,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC,GAC5D,OAAO,CAAC,CAAC,EAAE,CAAC,CAOd;AAED,oFAAoF;AACpF,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAavF;AAMD,qFAAqF;AACrF,MAAM,MAAM,mBAAmB,GAAG,OAAO,GAAG,MAAM,GAAG,gBAAgB,GAAG,YAAY,GAAG,MAAM,CAAC;AAU9F;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAU1F;AAMD;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,QAAQ,EAAE,qBAAqB,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CA6B/E;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAoB5D;AAED;;;;;;;;GAQG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAczE"}