@proletariat/cli 0.3.103 → 0.3.104

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 (77) hide show
  1. package/dist/commands/project/configure.d.ts +13 -0
  2. package/dist/commands/project/configure.js +149 -0
  3. package/dist/commands/project/configure.js.map +1 -0
  4. package/dist/commands/session/attach.d.ts +6 -1
  5. package/dist/commands/session/attach.js +82 -28
  6. package/dist/commands/session/attach.js.map +1 -1
  7. package/dist/commands/session/report.d.ts +5 -0
  8. package/dist/commands/session/report.js +53 -0
  9. package/dist/commands/session/report.js.map +1 -1
  10. package/dist/commands/ticket/delete.js +15 -7
  11. package/dist/commands/ticket/delete.js.map +1 -1
  12. package/dist/commands/ticket/move.js +21 -10
  13. package/dist/commands/ticket/move.js.map +1 -1
  14. package/dist/commands/ticket/update.js +18 -9
  15. package/dist/commands/ticket/update.js.map +1 -1
  16. package/dist/commands/update.js +12 -6
  17. package/dist/commands/update.js.map +1 -1
  18. package/dist/commands/work/ship.js +39 -57
  19. package/dist/commands/work/ship.js.map +1 -1
  20. package/dist/commands/work/start.js +62 -77
  21. package/dist/commands/work/start.js.map +1 -1
  22. package/dist/lib/events/events.d.ts +2 -0
  23. package/dist/lib/execution/devcontainer.d.ts +1 -0
  24. package/dist/lib/execution/devcontainer.js +1 -0
  25. package/dist/lib/execution/devcontainer.js.map +1 -1
  26. package/dist/lib/execution/runners/docker-management.d.ts +22 -3
  27. package/dist/lib/execution/runners/docker-management.js +102 -14
  28. package/dist/lib/execution/runners/docker-management.js.map +1 -1
  29. package/dist/lib/execution/runners/prompt-builder.d.ts +12 -0
  30. package/dist/lib/execution/runners/prompt-builder.js +44 -0
  31. package/dist/lib/execution/runners/prompt-builder.js.map +1 -1
  32. package/dist/lib/orchestrate/actions.js +68 -1
  33. package/dist/lib/orchestrate/actions.js.map +1 -1
  34. package/dist/lib/orchestrate/poller.d.ts +4 -1
  35. package/dist/lib/orchestrate/poller.js +63 -13
  36. package/dist/lib/orchestrate/poller.js.map +1 -1
  37. package/dist/lib/orchestrate/presets.js +18 -3
  38. package/dist/lib/orchestrate/presets.js.map +1 -1
  39. package/dist/lib/orchestrate/simple-poller.js +33 -11
  40. package/dist/lib/orchestrate/simple-poller.js.map +1 -1
  41. package/dist/lib/orchestrate/types.d.ts +2 -2
  42. package/dist/lib/orchestrate/types.js +3 -0
  43. package/dist/lib/orchestrate/types.js.map +1 -1
  44. package/dist/lib/pmo/base-command.js +12 -2
  45. package/dist/lib/pmo/base-command.js.map +1 -1
  46. package/dist/lib/pmo/templates-builtin.d.ts +2 -0
  47. package/dist/lib/pmo/templates-builtin.js +13 -0
  48. package/dist/lib/pmo/templates-builtin.js.map +1 -1
  49. package/dist/lib/pr/index.d.ts +9 -0
  50. package/dist/lib/pr/index.js +22 -0
  51. package/dist/lib/pr/index.js.map +1 -1
  52. package/dist/lib/providers/linear-provider.d.ts +11 -12
  53. package/dist/lib/providers/linear-provider.js +150 -177
  54. package/dist/lib/providers/linear-provider.js.map +1 -1
  55. package/dist/lib/providers/resolver.d.ts +5 -5
  56. package/dist/lib/providers/resolver.js +25 -31
  57. package/dist/lib/providers/resolver.js.map +1 -1
  58. package/dist/lib/sync/engine.js +15 -6
  59. package/dist/lib/sync/engine.js.map +1 -1
  60. package/dist/lib/sync/reconciler.d.ts +11 -2
  61. package/dist/lib/sync/reconciler.js +30 -12
  62. package/dist/lib/sync/reconciler.js.map +1 -1
  63. package/dist/lib/update-check.d.ts +24 -0
  64. package/dist/lib/update-check.js +85 -0
  65. package/dist/lib/update-check.js.map +1 -1
  66. package/dist/lib/update-prompt.js +10 -5
  67. package/dist/lib/update-prompt.js.map +1 -1
  68. package/dist/lib/work-lifecycle/hooks/types.d.ts +1 -1
  69. package/dist/lib/work-lifecycle/hooks/types.js +2 -0
  70. package/dist/lib/work-lifecycle/hooks/types.js.map +1 -1
  71. package/dist/lib/work-lifecycle/settings.d.ts +42 -0
  72. package/dist/lib/work-lifecycle/settings.js +65 -0
  73. package/dist/lib/work-lifecycle/settings.js.map +1 -1
  74. package/dist/lib/work-lifecycle/transition.js +45 -31
  75. package/dist/lib/work-lifecycle/transition.js.map +1 -1
  76. package/oclif.manifest.json +959 -895
  77. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"linear-provider.js","sourceRoot":"","sources":["../../../src/lib/providers/linear-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linear-provider.js","sourceRoot":"","sources":["../../../src/lib/providers/linear-provider.ts"],"names":[],"mappings":"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"}
@@ -23,16 +23,16 @@ import type { TicketProvider, ProviderStorage } from './types.js';
23
23
  * Resolve the correct provider for a given ticket.
24
24
  *
25
25
  * Uses the ticket's metadata to determine the source of truth:
26
- * - external_source = 'linear' + configured + outbound/bidirectional → Linear
26
+ * - external_source = 'linear' + configured → Linear
27
27
  * - Otherwise → PMO
28
28
  *
29
29
  * The resolved provider is wrapped with EventEmittingProvider so that
30
30
  * events are emitted at the adapter layer, not the storage layer.
31
31
  *
32
- * @param ticketId - The PMO ticket ID
33
- * @param projectId - The PMO project ID
34
- * @param db - Database handle for config/mapping lookups
35
- * @param storage - Storage for fallback and local sync
32
+ * @param ticketId - The ticket ID (PMO TKT-xxx or external PRLT-xxx)
33
+ * @param projectId - The project ID
34
+ * @param db - Database handle for config lookups
35
+ * @param storage - Storage for PMO fallback
36
36
  * @param metadata - Ticket metadata (contains external_source, etc.)
37
37
  * @returns The appropriate TicketProvider for this ticket
38
38
  */
@@ -21,7 +21,6 @@ import { isLinearConfigured } from '../linear/config.js';
21
21
  import { isClickUpConfigured } from '../clickup/config.js';
22
22
  import { isGitHubConfigured } from '../github/config.js';
23
23
  import { isJiraConfigured } from '../jira/config.js';
24
- import { LinearMapper } from '../linear/mapper.js';
25
24
  import { isTrelloConfigured } from '../trello/config.js';
26
25
  import { TrelloMapper } from '../trello/mapper.js';
27
26
  import { isAsanaConfigured } from '../asana/config.js';
@@ -95,46 +94,42 @@ function wrapWithEvents(provider, db, storage, projectId) {
95
94
  const resolver = createDbStatusResolver(db, storage);
96
95
  return new EventEmittingProvider(provider, resolver, projectId);
97
96
  }
97
+ /**
98
+ * Wrap a provider with EventEmittingProvider using null status resolver.
99
+ * Used for external providers (Linear, etc.) where tickets don't exist
100
+ * in local PMO and status resolution would fail.
101
+ */
102
+ function wrapWithEventsNoResolver(provider, projectId) {
103
+ return new EventEmittingProvider(provider, null, projectId);
104
+ }
98
105
  /**
99
106
  * Resolve the correct provider for a given ticket.
100
107
  *
101
108
  * Uses the ticket's metadata to determine the source of truth:
102
- * - external_source = 'linear' + configured + outbound/bidirectional → Linear
109
+ * - external_source = 'linear' + configured → Linear
103
110
  * - Otherwise → PMO
104
111
  *
105
112
  * The resolved provider is wrapped with EventEmittingProvider so that
106
113
  * events are emitted at the adapter layer, not the storage layer.
107
114
  *
108
- * @param ticketId - The PMO ticket ID
109
- * @param projectId - The PMO project ID
110
- * @param db - Database handle for config/mapping lookups
111
- * @param storage - Storage for fallback and local sync
115
+ * @param ticketId - The ticket ID (PMO TKT-xxx or external PRLT-xxx)
116
+ * @param projectId - The project ID
117
+ * @param db - Database handle for config lookups
118
+ * @param storage - Storage for PMO fallback
112
119
  * @param metadata - Ticket metadata (contains external_source, etc.)
113
120
  * @returns The appropriate TicketProvider for this ticket
114
121
  */
115
122
  export function resolveTicketProvider(ticketId, projectId, db, storage, metadata) {
116
123
  const externalSource = metadata?.external_source;
117
- // Check Linear
124
+ // Check Linear — when configured, use Linear provider directly (no mapping lookup needed)
118
125
  if (externalSource === 'linear' && isLinearConfigured(db)) {
119
- const mapper = new LinearMapper(db);
120
- const mapping = mapper.getByTicketId(ticketId);
121
- if (mapping) {
122
- // Use Linear provider when we need to write back to Linear:
123
- // - 'outbound' = ticket came from Linear (via work start) → write back status changes
124
- // - 'bidirectional' = both directions synced → write to Linear directly
125
- // - 'inbound' = bulk import from Linear → read-only, no write-back
126
- if (mapping.syncDirection === 'outbound' || mapping.syncDirection === 'bidirectional') {
127
- const inner = new LinearTicketProvider(db, storage, projectId, null);
128
- return wrapWithEvents(inner, db, storage, projectId);
129
- }
130
- }
131
- else if (metadata?.external_key || metadata?.external_id) {
132
- // PRLT-1167: External-only ticket (no PMO mirror, no LinearMapper mapping).
133
- // When metadata contains external_key/external_id, resolve to Linear provider
134
- // so post-execution transitions write back to Linear directly.
135
- const inner = new LinearTicketProvider(db, storage, projectId, null);
136
- return wrapWithEvents(inner, db, storage, projectId);
137
- }
126
+ const inner = new LinearTicketProvider(db);
127
+ return wrapWithEventsNoResolver(inner, projectId);
128
+ }
129
+ // Also resolve to Linear for tickets with external_key/external_id even without metadata.external_source
130
+ if (!externalSource && isLinearConfigured(db) && (metadata?.external_key || metadata?.external_id)) {
131
+ const inner = new LinearTicketProvider(db);
132
+ return wrapWithEventsNoResolver(inner, projectId);
138
133
  }
139
134
  // Check ClickUp
140
135
  if (externalSource === 'clickup' && isClickUpConfigured(db)) {
@@ -155,7 +150,6 @@ export function resolveTicketProvider(ticketId, projectId, db, storage, metadata
155
150
  return wrapWithEvents(inner, db, storage, projectId);
156
151
  }
157
152
  else if (metadata?.external_key || metadata?.external_id) {
158
- // PRLT-1167: External-only ticket — resolve to Trello provider directly
159
153
  const inner = new TrelloTicketProvider(db, storage, projectId, null);
160
154
  return wrapWithEvents(inner, db, storage, projectId);
161
155
  }
@@ -203,8 +197,8 @@ export function resolveProjectProvider(db, storage, projectId, source) {
203
197
  return wrapWithEvents(inner, db, storage, projectId);
204
198
  }
205
199
  if (source === 'linear') {
206
- const inner = new LinearTicketProvider(db, storage, projectId, null);
207
- return wrapWithEvents(inner, db, storage, projectId);
200
+ const inner = new LinearTicketProvider(db);
201
+ return wrapWithEventsNoResolver(inner, projectId);
208
202
  }
209
203
  if (source === 'clickup') {
210
204
  const inner = new ClickUpTicketProvider(db, storage, projectId);
@@ -229,8 +223,8 @@ export function resolveProjectProvider(db, storage, projectId, source) {
229
223
  // auto: use Linear when it's configured in the workspace
230
224
  try {
231
225
  if (isLinearConfigured(db)) {
232
- const inner = new LinearTicketProvider(db, storage, projectId, null);
233
- return wrapWithEvents(inner, db, storage, projectId);
226
+ const inner = new LinearTicketProvider(db);
227
+ return wrapWithEventsNoResolver(inner, projectId);
234
228
  }
235
229
  }
236
230
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/lib/providers/resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../../src/lib/providers/resolver.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,7 @@ import { resolveTicketProvider } from '../providers/resolver.js';
10
10
  import { ExecutionStorage } from '../execution/storage.js';
11
11
  import { getPRForBranch, getPRChecks, listOpenPRs, } from '../pr/index.js';
12
12
  import { reconcileTicket, reconcileAgentSpawned, detectDuplicates, detectStaleTriage, } from './reconciler.js';
13
+ import { getWorkflowConfig } from '../work-lifecycle/settings.js';
13
14
  // =============================================================================
14
15
  // Engine
15
16
  // =============================================================================
@@ -24,6 +25,14 @@ import { reconcileTicket, reconcileAgentSpawned, detectDuplicates, detectStaleTr
24
25
  export async function runSyncCycle(db, storage, projectId, options = {}) {
25
26
  const { cwd, log, dryRun } = options;
26
27
  const execStorage = new ExecutionStorage(db);
28
+ // Read workflow configuration for target column name resolution
29
+ let workflowConfig;
30
+ try {
31
+ workflowConfig = getWorkflowConfig(db);
32
+ }
33
+ catch {
34
+ // pmo_settings table may not exist yet — fall back to defaults
35
+ }
27
36
  // Gather all tickets in active states (started = In Progress / In Review)
28
37
  const startedTickets = await storage.listTickets(projectId, { statusCategory: 'started' });
29
38
  // Also check recently completed tickets to catch any that were manually moved
@@ -40,7 +49,7 @@ export async function runSyncCycle(db, storage, projectId, options = {}) {
40
49
  for (const ticket of startedTickets) {
41
50
  try {
42
51
  const ctx = buildContext(ticket, prByBranch, execStorage, cwd);
43
- const action = reconcileTicket(ctx);
52
+ const action = reconcileTicket(ctx, workflowConfig);
44
53
  if (action) {
45
54
  actions.push(action);
46
55
  }
@@ -66,7 +75,7 @@ export async function runSyncCycle(db, storage, projectId, options = {}) {
66
75
  }
67
76
  // Get all tickets for board-level rules (duplicates, stale triage, agent spawned)
68
77
  const allTickets = await storage.listTickets(projectId);
69
- const agentSpawnedActions = reconcileAgentSpawned(allTickets, activeAgentTicketIds);
78
+ const agentSpawnedActions = reconcileAgentSpawned(allTickets, activeAgentTicketIds, workflowConfig);
70
79
  actions.push(...agentSpawnedActions);
71
80
  // Board-level: detect duplicate tickets
72
81
  const duplicateActions = detectDuplicates(allTickets);
@@ -169,13 +178,13 @@ function markExecutionsCompleted(execStorage, ticketId) {
169
178
  function formatAction(action) {
170
179
  switch (action.type) {
171
180
  case 'move_to_done':
172
- return `move ${action.ticketId} to Done (${action.reason})`;
181
+ return `move ${action.ticketId} to ${action.targetStatus ?? 'Done'} (${action.reason})`;
173
182
  case 'move_to_review':
174
- return `move ${action.ticketId} to Review (${action.reason})`;
183
+ return `move ${action.ticketId} to ${action.targetStatus ?? 'Review'} (${action.reason})`;
175
184
  case 'move_to_in_progress':
176
- return `move ${action.ticketId} to In Progress (${action.reason})`;
185
+ return `move ${action.ticketId} to ${action.targetStatus ?? 'In Progress'} (${action.reason})`;
177
186
  case 'move_to_backlog':
178
- return `move ${action.ticketId} to Backlog (${action.reason})`;
187
+ return `move ${action.ticketId} to ${action.targetStatus ?? 'Backlog'} (${action.reason})`;
179
188
  case 'flag_stale':
180
189
  return `flag ${action.ticketId} as stale (${action.reason})`;
181
190
  case 'flag_stale_triage':
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/lib/sync/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/lib/sync/engine.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,7 @@
15
15
  */
16
16
  import type { PRInfo, PRCheck } from '../pr/index.js';
17
17
  import type { Ticket } from '../pmo/types.js';
18
+ import type { WorkflowConfig } from '../work-lifecycle/settings.js';
18
19
  export type ReconcileActionType = 'move_to_done' | 'move_to_review' | 'move_to_in_progress' | 'flag_stale' | 'flag_stale_triage' | 'flag_duplicate' | 'move_to_backlog';
19
20
  export interface ReconcileAction {
20
21
  type: ReconcileActionType;
@@ -40,8 +41,12 @@ export interface ReconcileResult {
40
41
  }
41
42
  /**
42
43
  * Determine reconciliation actions for a single ticket.
44
+ *
45
+ * @param ctx - Reconciliation context (ticket, PR, checks, execution state)
46
+ * @param config - Optional workflow config for resolving target column names.
47
+ * When omitted, falls back to hardcoded defaults (Review, Done, etc.)
43
48
  */
44
- export declare function reconcileTicket(ctx: ReconcileContext): ReconcileAction | null;
49
+ export declare function reconcileTicket(ctx: ReconcileContext, config?: WorkflowConfig): ReconcileAction | null;
45
50
  /**
46
51
  * Context for board-level reconciliation that operates across all tickets.
47
52
  */
@@ -56,8 +61,12 @@ export interface BoardReconcileContext {
56
61
  /**
57
62
  * Detect tickets whose agent has been spawned but status is still in triage/backlog.
58
63
  * Rule: Agent spawned → ticket should be In Progress.
64
+ *
65
+ * @param tickets - All tickets on the board
66
+ * @param activeAgentTicketIds - Ticket IDs with running agents
67
+ * @param config - Optional workflow config for resolving target column names
59
68
  */
60
- export declare function reconcileAgentSpawned(tickets: Ticket[], activeAgentTicketIds: Set<string>): ReconcileAction[];
69
+ export declare function reconcileAgentSpawned(tickets: Ticket[], activeAgentTicketIds: Set<string>, config?: WorkflowConfig): ReconcileAction[];
61
70
  /**
62
71
  * Detect duplicate tickets — tickets with the same title and similar descriptions.
63
72
  * Returns flag_duplicate actions for each duplicate found (flags the newer one).
@@ -18,10 +18,18 @@
18
18
  // =============================================================================
19
19
  /**
20
20
  * Determine reconciliation actions for a single ticket.
21
+ *
22
+ * @param ctx - Reconciliation context (ticket, PR, checks, execution state)
23
+ * @param config - Optional workflow config for resolving target column names.
24
+ * When omitted, falls back to hardcoded defaults (Review, Done, etc.)
21
25
  */
22
- export function reconcileTicket(ctx) {
26
+ export function reconcileTicket(ctx, config) {
23
27
  const { ticket, pr, checks, hasActiveExecution } = ctx;
24
28
  const category = ticket.statusCategory;
29
+ // Resolve target status names from config (or defaults)
30
+ const doneStatus = config?.done ?? 'Done';
31
+ const reviewStatus = config?.review ?? 'Review';
32
+ const backlogStatus = config?.backlog ?? 'Backlog';
25
33
  // Rule 1: Merged PR + ticket not Done → move to Done
26
34
  if (pr?.state === 'MERGED' && category !== 'completed' && category !== 'canceled') {
27
35
  return {
@@ -29,25 +37,25 @@ export function reconcileTicket(ctx) {
29
37
  ticketId: ticket.id,
30
38
  ticketTitle: ticket.title,
31
39
  reason: `PR #${pr.number} is merged but ticket is still in ${ticket.statusName ?? category}`,
32
- targetStatus: 'Done',
40
+ targetStatus: doneStatus,
33
41
  };
34
42
  }
35
43
  // Rule 4: Ticket in review + PR closed (not merged) → move to Backlog
36
44
  // Check this before rule 2 since a closed PR should take precedence
37
- if (pr?.state === 'CLOSED' && category === 'started' && isReviewStatus(ticket)) {
45
+ if (pr?.state === 'CLOSED' && category === 'started' && isReviewStatus(ticket, config)) {
38
46
  return {
39
47
  type: 'move_to_backlog',
40
48
  ticketId: ticket.id,
41
49
  ticketTitle: ticket.title,
42
50
  reason: `PR #${pr.number} was closed without merging`,
43
- targetStatus: 'Backlog',
51
+ targetStatus: backlogStatus,
44
52
  };
45
53
  }
46
54
  // Rule 2a: Green CI + ticket In Progress → move to Review
47
55
  if (pr?.state === 'OPEN' &&
48
56
  !pr.isDraft &&
49
57
  category === 'started' &&
50
- !isReviewStatus(ticket) &&
58
+ !isReviewStatus(ticket, config) &&
51
59
  checks.length > 0 &&
52
60
  allChecksGreen(checks)) {
53
61
  return {
@@ -55,7 +63,7 @@ export function reconcileTicket(ctx) {
55
63
  ticketId: ticket.id,
56
64
  ticketTitle: ticket.title,
57
65
  reason: `PR #${pr.number} has all CI checks passing`,
58
- targetStatus: 'Review',
66
+ targetStatus: reviewStatus,
59
67
  };
60
68
  }
61
69
  // Rule 2b: PR opened (not draft) + ticket In Progress → move to Review
@@ -63,18 +71,18 @@ export function reconcileTicket(ctx) {
63
71
  if (pr?.state === 'OPEN' &&
64
72
  !pr.isDraft &&
65
73
  category === 'started' &&
66
- !isReviewStatus(ticket)) {
74
+ !isReviewStatus(ticket, config)) {
67
75
  return {
68
76
  type: 'move_to_review',
69
77
  ticketId: ticket.id,
70
78
  ticketTitle: ticket.title,
71
79
  reason: `PR #${pr.number} opened for review`,
72
- targetStatus: 'Review',
80
+ targetStatus: reviewStatus,
73
81
  };
74
82
  }
75
83
  // Rule 3: Ticket In Progress + no active agent + no open PR → flag as stale
76
84
  if (category === 'started' &&
77
- !isReviewStatus(ticket) &&
85
+ !isReviewStatus(ticket, config) &&
78
86
  !hasActiveExecution &&
79
87
  (!pr || pr.state === 'CLOSED')) {
80
88
  return {
@@ -94,17 +102,27 @@ function allChecksGreen(checks) {
94
102
  }
95
103
  /**
96
104
  * Check if a ticket is in a review-like status.
105
+ * When a WorkflowConfig is provided, matches against the configured review column name.
106
+ * Otherwise falls back to substring matching for backward compatibility.
97
107
  */
98
- function isReviewStatus(ticket) {
108
+ function isReviewStatus(ticket, config) {
99
109
  const name = (ticket.statusName ?? '').toLowerCase();
110
+ if (config?.review) {
111
+ return name === config.review.toLowerCase();
112
+ }
100
113
  return name.includes('review') || name.includes('in review');
101
114
  }
102
115
  /**
103
116
  * Detect tickets whose agent has been spawned but status is still in triage/backlog.
104
117
  * Rule: Agent spawned → ticket should be In Progress.
118
+ *
119
+ * @param tickets - All tickets on the board
120
+ * @param activeAgentTicketIds - Ticket IDs with running agents
121
+ * @param config - Optional workflow config for resolving target column names
105
122
  */
106
- export function reconcileAgentSpawned(tickets, activeAgentTicketIds) {
123
+ export function reconcileAgentSpawned(tickets, activeAgentTicketIds, config) {
107
124
  const actions = [];
125
+ const inProgressStatus = config?.in_progress ?? 'In Progress';
108
126
  for (const ticket of tickets) {
109
127
  const category = ticket.statusCategory;
110
128
  // If an agent is running for this ticket but the ticket is still in backlog/todo
@@ -115,7 +133,7 @@ export function reconcileAgentSpawned(tickets, activeAgentTicketIds) {
115
133
  ticketId: ticket.id,
116
134
  ticketTitle: ticket.title,
117
135
  reason: 'Agent is actively working on this ticket',
118
- targetStatus: 'In Progress',
136
+ targetStatus: inProgressStatus,
119
137
  });
120
138
  }
121
139
  }
@@ -1 +1 @@
1
- {"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../../../src/lib/sync/reconciler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../../../src/lib/sync/reconciler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAyCH,gFAAgF;AAChF,aAAa;AACb,gFAAgF;AAEhF;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,GAAqB,EAAE,MAAuB;IAC5E,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE,GAAG,GAAG,CAAA;IACtD,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAA;IAEtC,wDAAwD;IACxD,MAAM,UAAU,GAAG,MAAM,EAAE,IAAI,IAAI,MAAM,CAAA;IACzC,MAAM,YAAY,GAAG,MAAM,EAAE,MAAM,IAAI,QAAQ,CAAA;IAC/C,MAAM,aAAa,GAAG,MAAM,EAAE,OAAO,IAAI,SAAS,CAAA;IAElD,qDAAqD;IACrD,IAAI,EAAE,EAAE,KAAK,KAAK,QAAQ,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;QAClF,OAAO;YACL,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,WAAW,EAAE,MAAM,CAAC,KAAK;YACzB,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,qCAAqC,MAAM,CAAC,UAAU,IAAI,QAAQ,EAAE;YAC5F,YAAY,EAAE,UAAU;SACzB,CAAA;IACH,CAAC;IAED,sEAAsE;IACtE,oEAAoE;IACpE,IAAI,EAAE,EAAE,KAAK,KAAK,QAAQ,IAAI,QAAQ,KAAK,SAAS,IAAI,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;QACvF,OAAO;YACL,IAAI,EAAE,iBAAiB;YACvB,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,WAAW,EAAE,MAAM,CAAC,KAAK;YACzB,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,6BAA6B;YACrD,YAAY,EAAE,aAAa;SAC5B,CAAA;IACH,CAAC;IAED,0DAA0D;IAC1D,IACE,EAAE,EAAE,KAAK,KAAK,MAAM;QACpB,CAAC,EAAE,CAAC,OAAO;QACX,QAAQ,KAAK,SAAS;QACtB,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC;QAC/B,MAAM,CAAC,MAAM,GAAG,CAAC;QACjB,cAAc,CAAC,MAAM,CAAC,EACtB,CAAC;QACD,OAAO;YACL,IAAI,EAAE,gBAAgB;YACtB,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,WAAW,EAAE,MAAM,CAAC,KAAK;YACzB,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,4BAA4B;YACpD,YAAY,EAAE,YAAY;SAC3B,CAAA;IACH,CAAC;IAED,uEAAuE;IACvE,kFAAkF;IAClF,IACE,EAAE,EAAE,KAAK,KAAK,MAAM;QACpB,CAAC,EAAE,CAAC,OAAO;QACX,QAAQ,KAAK,SAAS;QACtB,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,EAC/B,CAAC;QACD,OAAO;YACL,IAAI,EAAE,gBAAgB;YACtB,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,WAAW,EAAE,MAAM,CAAC,KAAK;YACzB,MAAM,EAAE,OAAO,EAAE,CAAC,MAAM,oBAAoB;YAC5C,YAAY,EAAE,YAAY;SAC3B,CAAA;IACH,CAAC;IAED,4EAA4E;IAC5E,IACE,QAAQ,KAAK,SAAS;QACtB,CAAC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC;QAC/B,CAAC,kBAAkB;QACnB,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,KAAK,QAAQ,CAAC,EAC9B,CAAC;QACD,OAAO;YACL,IAAI,EAAE,YAAY;YAClB,QAAQ,EAAE,MAAM,CAAC,EAAE;YACnB,WAAW,EAAE,MAAM,CAAC,KAAK;YACzB,MAAM,EAAE,gCAAgC;SACzC,CAAA;IACH,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED;;GAEG;AACH,SAAS,cAAc,CAAC,MAAiB;IACvC,OAAO,MAAM,CAAC,KAAK,CACjB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS,IAAI,CAAC,CAAC,UAAU,KAAK,SAAS,CAC5F,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc,CAAC,MAAc,EAAE,MAAuB;IAC7D,MAAM,IAAI,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;IACpD,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;QACnB,OAAO,IAAI,KAAK,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAA;IAC7C,CAAC;IACD,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;AAC9D,CAAC;AAkBD;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAiB,EACjB,oBAAiC,EACjC,MAAuB;IAEvB,MAAM,OAAO,GAAsB,EAAE,CAAA;IACrC,MAAM,gBAAgB,GAAG,MAAM,EAAE,WAAW,IAAI,aAAa,CAAA;IAE7D,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAA;QACtC,iFAAiF;QACjF,IACE,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACnC,CAAC,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,QAAQ,CAAC,EAC7E,CAAC;YACD,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,qBAAqB;gBAC3B,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnB,WAAW,EAAE,MAAM,CAAC,KAAK;gBACzB,MAAM,EAAE,0CAA0C;gBAClD,YAAY,EAAE,gBAAgB;aAC/B,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAiB;IAChD,MAAM,OAAO,GAAsB,EAAE,CAAA;IACrC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAA;IAEtC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,iDAAiD;QACjD,IAAI,MAAM,CAAC,cAAc,KAAK,WAAW,IAAI,MAAM,CAAC,cAAc,KAAK,UAAU,EAAE,CAAC;YAClF,SAAQ;QACV,CAAC;QAED,MAAM,GAAG,GAAG,0BAA0B,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACpD,IAAI,CAAC,GAAG;YAAE,SAAQ;QAElB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAC9B,IAAI,QAAQ,EAAE,CAAC;YACb,wDAAwD;YACxD,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,CAAC,SAAS,GAAG,QAAQ,CAAC,SAAS;gBAC1D,CAAC,CAAC,CAAC,MAAM,EAAE,QAAQ,CAAC;gBACpB,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAA;YAEtB,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,gBAAgB;gBACtB,QAAQ,EAAE,KAAK,CAAC,EAAE;gBAClB,WAAW,EAAE,KAAK,CAAC,KAAK;gBACxB,MAAM,EAAE,yBAAyB,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,KAAK,GAAG;aAC7D,CAAC,CAAA;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;QACvB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAC/B,OAAiB,EACjB,cAA2B;IAE3B,MAAM,OAAO,GAAsB,EAAE,CAAA;IAErC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,QAAQ,GAAG,MAAM,CAAC,cAAc,CAAA;QACtC,2CAA2C;QAC3C,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,QAAQ;YAAE,SAAQ;QACzF,4BAA4B;QAC5B,IAAI,CAAC,MAAM,CAAC,MAAM;YAAE,SAAQ;QAE5B,IAAI,cAAc,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,mBAAmB;gBACzB,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnB,WAAW,EAAE,MAAM,CAAC,KAAK;gBACzB,MAAM,EAAE,WAAW,MAAM,CAAC,MAAM,4CAA4C,MAAM,CAAC,UAAU,IAAI,QAAQ,EAAE;aAC5G,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;GAGG;AACH,SAAS,0BAA0B,CAAC,KAAa;IAC/C,OAAO,KAAK;SACT,WAAW,EAAE;SACb,IAAI,EAAE;QACP,wDAAwD;SACvD,OAAO,CAAC,oBAAoB,EAAE,EAAE,CAAC;SACjC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC;SAC1B,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;AACzB,CAAC"}
@@ -81,6 +81,30 @@ export declare function fetchLatestVersion(pm: PackageManager): Promise<string |
81
81
  * Returns true if `latest` is newer than `current`.
82
82
  */
83
83
  export declare function isNewerVersion(current: string, latest: string): boolean;
84
+ /**
85
+ * Get the npm global node_modules directory.
86
+ * Returns null if it cannot be determined.
87
+ */
88
+ export declare function getNpmGlobalModulesDir(): string | null;
89
+ /**
90
+ * Remove the existing @proletariat/cli directory from npm global node_modules.
91
+ * This prevents ENOTEMPTY errors during `npm install -g`, which is a known npm
92
+ * bug where renaming the old package directory fails.
93
+ *
94
+ * Safe to call even if the directory doesn't exist.
95
+ */
96
+ export declare function cleanNpmPackageDir(): boolean;
97
+ /**
98
+ * Run an npm global install command with automatic ENOTEMPTY retry.
99
+ *
100
+ * npm global installs frequently fail with ENOTEMPTY when renaming the
101
+ * old package directory (a known npm bug). When this error is detected
102
+ * in stderr, the old package directory is removed and the install is
103
+ * retried transparently.
104
+ *
105
+ * Throws on failure (both non-ENOTEMPTY errors and failed retries).
106
+ */
107
+ export declare function runNpmInstallWithRetry(command: string): void;
84
108
  export interface UpdateInfo {
85
109
  /** Whether an update is available (and not dismissed) */
86
110
  updateAvailable: boolean;
@@ -330,6 +330,91 @@ export function isNewerVersion(current, latest) {
330
330
  return false;
331
331
  }
332
332
  // ---------------------------------------------------------------------------
333
+ // npm ENOTEMPTY workaround
334
+ // ---------------------------------------------------------------------------
335
+ /**
336
+ * Get the npm global node_modules directory.
337
+ * Returns null if it cannot be determined.
338
+ */
339
+ export function getNpmGlobalModulesDir() {
340
+ try {
341
+ const prefix = execSync('npm prefix -g', {
342
+ encoding: 'utf-8',
343
+ stdio: ['pipe', 'pipe', 'pipe'],
344
+ timeout: 10_000,
345
+ }).trim();
346
+ return path.join(prefix, 'lib', 'node_modules');
347
+ }
348
+ catch {
349
+ return null;
350
+ }
351
+ }
352
+ /**
353
+ * Remove the existing @proletariat/cli directory from npm global node_modules.
354
+ * This prevents ENOTEMPTY errors during `npm install -g`, which is a known npm
355
+ * bug where renaming the old package directory fails.
356
+ *
357
+ * Safe to call even if the directory doesn't exist.
358
+ */
359
+ export function cleanNpmPackageDir() {
360
+ const modulesDir = getNpmGlobalModulesDir();
361
+ if (!modulesDir)
362
+ return false;
363
+ const packageDir = path.join(modulesDir, '@proletariat', 'cli');
364
+ try {
365
+ if (fs.existsSync(packageDir)) {
366
+ fs.rmSync(packageDir, { recursive: true, force: true });
367
+ }
368
+ return true;
369
+ }
370
+ catch {
371
+ return false;
372
+ }
373
+ }
374
+ /**
375
+ * Run an npm global install command with automatic ENOTEMPTY retry.
376
+ *
377
+ * npm global installs frequently fail with ENOTEMPTY when renaming the
378
+ * old package directory (a known npm bug). When this error is detected
379
+ * in stderr, the old package directory is removed and the install is
380
+ * retried transparently.
381
+ *
382
+ * Throws on failure (both non-ENOTEMPTY errors and failed retries).
383
+ */
384
+ export function runNpmInstallWithRetry(command) {
385
+ try {
386
+ execSync(command, {
387
+ stdio: ['inherit', 'inherit', 'pipe'],
388
+ timeout: 120_000,
389
+ });
390
+ }
391
+ catch (error) {
392
+ const stderr = error?.stderr?.toString() ?? '';
393
+ if (!stderr.includes('ENOTEMPTY')) {
394
+ // Not an ENOTEMPTY error — re-throw with stderr attached
395
+ if (stderr) {
396
+ process.stderr.write(stderr);
397
+ }
398
+ throw error;
399
+ }
400
+ // ENOTEMPTY detected — clean the old directory and retry
401
+ console.log('');
402
+ console.log('npm encountered ENOTEMPTY error (known npm bug). Cleaning up and retrying…');
403
+ if (!cleanNpmPackageDir()) {
404
+ console.error('Could not clean the existing package directory.');
405
+ if (stderr) {
406
+ process.stderr.write(stderr);
407
+ }
408
+ throw error;
409
+ }
410
+ // Retry with full stdio inherited
411
+ execSync(command, {
412
+ stdio: 'inherit',
413
+ timeout: 120_000,
414
+ });
415
+ }
416
+ }
417
+ // ---------------------------------------------------------------------------
333
418
  // Pending check tracking
334
419
  // ---------------------------------------------------------------------------
335
420
  /** Module-level promise tracking so the check can be flushed before exit. */