@promptwheel/mcp 0.7.2 → 0.7.3

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.
@@ -3,6 +3,384 @@ import * as path from 'node:path';
3
3
  import { repos } from '@promptwheel/core';
4
4
  import { recordDedupEntry } from './dedup-memory.js';
5
5
  import { recordTicketOutcome as recordTicketOutcomeCore, } from '@promptwheel/core/sectors/shared';
6
+ const PLAN_ACTIONS = new Set(['create', 'modify', 'delete']);
7
+ const RISK_LEVELS = new Set(['low', 'medium', 'high']);
8
+ function isPlanAction(value) {
9
+ return value === 'create' || value === 'modify' || value === 'delete';
10
+ }
11
+ export function isRecord(value) {
12
+ if (typeof value !== 'object' || value === null || Array.isArray(value))
13
+ return false;
14
+ const proto = Object.getPrototypeOf(value);
15
+ return proto === Object.prototype || proto === null;
16
+ }
17
+ export function toStringOrUndefined(value) {
18
+ return typeof value === 'string' ? value : undefined;
19
+ }
20
+ export function toNumberOrUndefined(value) {
21
+ if (typeof value === 'number' && Number.isFinite(value))
22
+ return value;
23
+ if (typeof value === 'string' && value.trim() !== '') {
24
+ const parsed = Number(value);
25
+ return Number.isFinite(parsed) ? parsed : undefined;
26
+ }
27
+ return undefined;
28
+ }
29
+ export function toBooleanOrUndefined(value) {
30
+ if (typeof value === 'boolean')
31
+ return value;
32
+ if (typeof value === 'string') {
33
+ if (value.toLowerCase() === 'true')
34
+ return true;
35
+ if (value.toLowerCase() === 'false')
36
+ return false;
37
+ return undefined;
38
+ }
39
+ if (typeof value === 'number') {
40
+ if (value === 1)
41
+ return true;
42
+ if (value === 0)
43
+ return false;
44
+ return undefined;
45
+ }
46
+ return undefined;
47
+ }
48
+ export function toStringArrayOrUndefined(value) {
49
+ if (!Array.isArray(value))
50
+ return undefined;
51
+ const items = [];
52
+ for (const item of value) {
53
+ if (typeof item !== 'string')
54
+ return undefined;
55
+ items.push(item);
56
+ }
57
+ return items;
58
+ }
59
+ function invalid(type, message) {
60
+ return { ok: false, error: `Invalid ${type} payload: ${message}` };
61
+ }
62
+ function toRecordArrayOrUndefined(value) {
63
+ if (!Array.isArray(value))
64
+ return undefined;
65
+ const records = [];
66
+ for (const item of value) {
67
+ if (!isRecord(item))
68
+ return undefined;
69
+ records.push(item);
70
+ }
71
+ return records;
72
+ }
73
+ export function validateAndSanitizeEventPayload(type, payload) {
74
+ const sanitized = { ...payload };
75
+ if ('ticket_id' in payload) {
76
+ const ticketId = payload['ticket_id'];
77
+ if (typeof ticketId === 'string') {
78
+ sanitized['ticket_id'] = ticketId;
79
+ }
80
+ else if (typeof ticketId === 'number' && Number.isFinite(ticketId)) {
81
+ sanitized['ticket_id'] = String(ticketId);
82
+ }
83
+ else {
84
+ return invalid(type, '`ticket_id` must be a string or number');
85
+ }
86
+ }
87
+ switch (type) {
88
+ case 'SCOUT_OUTPUT': {
89
+ if ('explored_dirs' in payload) {
90
+ const exploredDirs = toStringArrayOrUndefined(payload['explored_dirs']);
91
+ if (!exploredDirs)
92
+ return invalid(type, '`explored_dirs` must be an array of strings');
93
+ sanitized['explored_dirs'] = exploredDirs;
94
+ }
95
+ if ('proposals' in payload) {
96
+ const proposals = toRecordArrayOrUndefined(payload['proposals']);
97
+ if (!proposals)
98
+ return invalid(type, '`proposals` must be an array of objects');
99
+ sanitized['proposals'] = proposals;
100
+ }
101
+ if ('reviewed_proposals' in payload) {
102
+ const reviewedProposals = toRecordArrayOrUndefined(payload['reviewed_proposals']);
103
+ if (!reviewedProposals)
104
+ return invalid(type, '`reviewed_proposals` must be an array of objects');
105
+ sanitized['reviewed_proposals'] = reviewedProposals;
106
+ }
107
+ if ('text' in payload) {
108
+ const text = toStringOrUndefined(payload['text']);
109
+ if (text === undefined)
110
+ return invalid(type, '`text` must be a string');
111
+ sanitized['text'] = text;
112
+ }
113
+ if ('exploration_summary' in payload) {
114
+ const summary = toStringOrUndefined(payload['exploration_summary']);
115
+ if (summary === undefined)
116
+ return invalid(type, '`exploration_summary` must be a string');
117
+ sanitized['exploration_summary'] = summary;
118
+ }
119
+ if ('sector_reclassification' in payload) {
120
+ const raw = payload['sector_reclassification'];
121
+ if (raw !== undefined) {
122
+ if (!isRecord(raw))
123
+ return invalid(type, '`sector_reclassification` must be an object');
124
+ const reclass = { ...raw };
125
+ if ('production' in raw) {
126
+ const production = toBooleanOrUndefined(raw['production']);
127
+ if (production === undefined)
128
+ return invalid(type, '`sector_reclassification.production` must be boolean');
129
+ reclass['production'] = production;
130
+ }
131
+ if ('confidence' in raw) {
132
+ const confidence = toStringOrUndefined(raw['confidence']);
133
+ if (!confidence || !RISK_LEVELS.has(confidence)) {
134
+ return invalid(type, '`sector_reclassification.confidence` must be low, medium, or high');
135
+ }
136
+ reclass['confidence'] = confidence;
137
+ }
138
+ sanitized['sector_reclassification'] = reclass;
139
+ }
140
+ }
141
+ return { ok: true, payload: sanitized };
142
+ }
143
+ case 'PROPOSALS_REVIEWED': {
144
+ const reviewedProposals = toRecordArrayOrUndefined(payload['reviewed_proposals']);
145
+ if (!reviewedProposals)
146
+ return invalid(type, '`reviewed_proposals` is required and must be an array of objects');
147
+ const cleanItems = [];
148
+ for (const item of reviewedProposals) {
149
+ const clean = {};
150
+ if ('title' in item) {
151
+ const title = toStringOrUndefined(item['title']);
152
+ if (title === undefined)
153
+ return invalid(type, '`reviewed_proposals[].title` must be a string');
154
+ clean['title'] = title;
155
+ }
156
+ if ('confidence' in item) {
157
+ const confidence = toNumberOrUndefined(item['confidence']);
158
+ if (confidence === undefined)
159
+ return invalid(type, '`reviewed_proposals[].confidence` must be a number');
160
+ clean['confidence'] = confidence;
161
+ }
162
+ if ('impact_score' in item) {
163
+ const impactScore = toNumberOrUndefined(item['impact_score']);
164
+ if (impactScore === undefined)
165
+ return invalid(type, '`reviewed_proposals[].impact_score` must be a number');
166
+ clean['impact_score'] = impactScore;
167
+ }
168
+ if ('review_note' in item) {
169
+ const reviewNote = toStringOrUndefined(item['review_note']);
170
+ if (reviewNote === undefined)
171
+ return invalid(type, '`reviewed_proposals[].review_note` must be a string');
172
+ clean['review_note'] = reviewNote;
173
+ }
174
+ cleanItems.push({ ...item, ...clean });
175
+ }
176
+ sanitized['reviewed_proposals'] = cleanItems;
177
+ return { ok: true, payload: sanitized };
178
+ }
179
+ case 'PROPOSALS_FILTERED':
180
+ case 'QA_PASSED':
181
+ return { ok: true, payload: sanitized };
182
+ case 'PLAN_SUBMITTED': {
183
+ const filesToTouchRaw = Array.isArray(payload['files_to_touch']) ? payload['files_to_touch']
184
+ : Array.isArray(payload['files']) ? payload['files']
185
+ : Array.isArray(payload['touched_files']) ? payload['touched_files']
186
+ : undefined;
187
+ if (('files_to_touch' in payload && !Array.isArray(payload['files_to_touch']))
188
+ || ('files' in payload && !Array.isArray(payload['files']))
189
+ || ('touched_files' in payload && !Array.isArray(payload['touched_files']))) {
190
+ return invalid(type, '`files_to_touch`/`files`/`touched_files` must be arrays');
191
+ }
192
+ const filesToTouch = [];
193
+ for (const file of filesToTouchRaw ?? []) {
194
+ if (typeof file === 'string') {
195
+ filesToTouch.push({ path: file, action: 'modify', reason: '' });
196
+ continue;
197
+ }
198
+ if (!isRecord(file)) {
199
+ return invalid(type, '`files_to_touch[]` entries must be strings or objects');
200
+ }
201
+ const pathValue = toStringOrUndefined(file['path']);
202
+ if (!pathValue)
203
+ return invalid(type, '`files_to_touch[].path` must be a non-empty string');
204
+ const actionValue = 'action' in file ? toStringOrUndefined(file['action']) : 'modify';
205
+ if (!actionValue || !PLAN_ACTIONS.has(actionValue) || !isPlanAction(actionValue)) {
206
+ return invalid(type, '`files_to_touch[].action` must be create, modify, or delete');
207
+ }
208
+ const reasonValue = 'reason' in file ? toStringOrUndefined(file['reason']) : '';
209
+ if (reasonValue === undefined)
210
+ return invalid(type, '`files_to_touch[].reason` must be a string');
211
+ filesToTouch.push({ path: pathValue, action: actionValue, reason: reasonValue });
212
+ }
213
+ sanitized['files_to_touch'] = filesToTouch;
214
+ if ('expected_tests' in payload) {
215
+ const expectedTests = toStringArrayOrUndefined(payload['expected_tests']);
216
+ if (!expectedTests)
217
+ return invalid(type, '`expected_tests` must be an array of strings');
218
+ sanitized['expected_tests'] = expectedTests;
219
+ }
220
+ if ('risk_level' in payload) {
221
+ const riskLevel = toStringOrUndefined(payload['risk_level']);
222
+ if (!riskLevel || !RISK_LEVELS.has(riskLevel)) {
223
+ return invalid(type, '`risk_level` must be low, medium, or high');
224
+ }
225
+ sanitized['risk_level'] = riskLevel;
226
+ }
227
+ if ('estimated_lines' in payload) {
228
+ const estimatedLines = toNumberOrUndefined(payload['estimated_lines']);
229
+ if (estimatedLines === undefined || estimatedLines < 0) {
230
+ return invalid(type, '`estimated_lines` must be a non-negative number');
231
+ }
232
+ sanitized['estimated_lines'] = estimatedLines;
233
+ }
234
+ return { ok: true, payload: sanitized };
235
+ }
236
+ case 'TICKET_RESULT': {
237
+ const status = toStringOrUndefined(payload['status']);
238
+ if (!status)
239
+ return invalid(type, '`status` is required and must be a string');
240
+ sanitized['status'] = status;
241
+ if ('changed_files' in payload) {
242
+ const changedFiles = toStringArrayOrUndefined(payload['changed_files']);
243
+ if (!changedFiles)
244
+ return invalid(type, '`changed_files` must be an array of strings');
245
+ sanitized['changed_files'] = changedFiles;
246
+ }
247
+ else {
248
+ sanitized['changed_files'] = [];
249
+ }
250
+ if ('lines_added' in payload) {
251
+ const linesAdded = toNumberOrUndefined(payload['lines_added']);
252
+ if (linesAdded === undefined || linesAdded < 0)
253
+ return invalid(type, '`lines_added` must be a non-negative number');
254
+ sanitized['lines_added'] = linesAdded;
255
+ }
256
+ else {
257
+ sanitized['lines_added'] = 0;
258
+ }
259
+ if ('lines_removed' in payload) {
260
+ const linesRemoved = toNumberOrUndefined(payload['lines_removed']);
261
+ if (linesRemoved === undefined || linesRemoved < 0)
262
+ return invalid(type, '`lines_removed` must be a non-negative number');
263
+ sanitized['lines_removed'] = linesRemoved;
264
+ }
265
+ else {
266
+ sanitized['lines_removed'] = 0;
267
+ }
268
+ if ('diff' in payload && payload['diff'] !== null && typeof payload['diff'] !== 'string') {
269
+ return invalid(type, '`diff` must be a string or null');
270
+ }
271
+ if ('stdout' in payload && typeof payload['stdout'] !== 'string') {
272
+ return invalid(type, '`stdout` must be a string');
273
+ }
274
+ if ('reason' in payload && typeof payload['reason'] !== 'string') {
275
+ return invalid(type, '`reason` must be a string');
276
+ }
277
+ return { ok: true, payload: sanitized };
278
+ }
279
+ case 'QA_COMMAND_RESULT': {
280
+ const command = toStringOrUndefined(payload['command']);
281
+ if (!command)
282
+ return invalid(type, '`command` is required and must be a string');
283
+ sanitized['command'] = command;
284
+ const success = toBooleanOrUndefined(payload['success']);
285
+ if (success === undefined)
286
+ return invalid(type, '`success` is required and must be boolean');
287
+ sanitized['success'] = success;
288
+ if ('output' in payload) {
289
+ const output = toStringOrUndefined(payload['output']);
290
+ if (output === undefined)
291
+ return invalid(type, '`output` must be a string');
292
+ sanitized['output'] = output;
293
+ }
294
+ else {
295
+ sanitized['output'] = '';
296
+ }
297
+ if ('durationMs' in payload) {
298
+ const durationMs = toNumberOrUndefined(payload['durationMs']);
299
+ if (durationMs === undefined || durationMs < 0)
300
+ return invalid(type, '`durationMs` must be a non-negative number');
301
+ sanitized['durationMs'] = durationMs;
302
+ }
303
+ else {
304
+ sanitized['durationMs'] = 0;
305
+ }
306
+ if ('timedOut' in payload) {
307
+ const timedOut = toBooleanOrUndefined(payload['timedOut']);
308
+ if (timedOut === undefined)
309
+ return invalid(type, '`timedOut` must be boolean');
310
+ sanitized['timedOut'] = timedOut;
311
+ }
312
+ else {
313
+ sanitized['timedOut'] = false;
314
+ }
315
+ return { ok: true, payload: sanitized };
316
+ }
317
+ case 'QA_FAILED': {
318
+ if ('failed_commands' in payload) {
319
+ const failedCommands = payload['failed_commands'];
320
+ if (typeof failedCommands === 'string') {
321
+ sanitized['failed_commands'] = [failedCommands];
322
+ }
323
+ else {
324
+ const commandArray = toStringArrayOrUndefined(failedCommands);
325
+ if (!commandArray)
326
+ return invalid(type, '`failed_commands` must be a string or array of strings');
327
+ sanitized['failed_commands'] = commandArray;
328
+ }
329
+ }
330
+ if ('command' in payload) {
331
+ const command = toStringOrUndefined(payload['command']);
332
+ if (command === undefined)
333
+ return invalid(type, '`command` must be a string');
334
+ sanitized['command'] = command;
335
+ }
336
+ if ('error' in payload) {
337
+ const error = toStringOrUndefined(payload['error']);
338
+ if (error === undefined)
339
+ return invalid(type, '`error` must be a string');
340
+ sanitized['error'] = error;
341
+ }
342
+ if ('output' in payload) {
343
+ const output = toStringOrUndefined(payload['output']);
344
+ if (output === undefined)
345
+ return invalid(type, '`output` must be a string');
346
+ sanitized['output'] = output;
347
+ }
348
+ return { ok: true, payload: sanitized };
349
+ }
350
+ case 'PR_CREATED': {
351
+ if ('url' in payload && typeof payload['url'] !== 'string') {
352
+ return invalid(type, '`url` must be a string');
353
+ }
354
+ if ('branch' in payload && typeof payload['branch'] !== 'string') {
355
+ return invalid(type, '`branch` must be a string');
356
+ }
357
+ return { ok: true, payload: sanitized };
358
+ }
359
+ case 'USER_OVERRIDE': {
360
+ if ('hint' in payload) {
361
+ const hint = toStringOrUndefined(payload['hint']);
362
+ if (hint === undefined)
363
+ return invalid(type, '`hint` must be a string');
364
+ sanitized['hint'] = hint;
365
+ }
366
+ if ('cancel' in payload) {
367
+ const cancel = toBooleanOrUndefined(payload['cancel']);
368
+ if (cancel === undefined)
369
+ return invalid(type, '`cancel` must be boolean');
370
+ sanitized['cancel'] = cancel;
371
+ }
372
+ if ('skip_review' in payload) {
373
+ const skipReview = toBooleanOrUndefined(payload['skip_review']);
374
+ if (skipReview === undefined)
375
+ return invalid(type, '`skip_review` must be boolean');
376
+ sanitized['skip_review'] = skipReview;
377
+ }
378
+ return { ok: true, payload: sanitized };
379
+ }
380
+ default:
381
+ return { ok: true, payload: sanitized };
382
+ }
383
+ }
6
384
  // ---------------------------------------------------------------------------
7
385
  // Helpers — shared sector & dedup recording
8
386
  // ---------------------------------------------------------------------------
@@ -1 +1 @@
1
- {"version":3,"file":"event-helpers.js","sourceRoot":"","sources":["../src/event-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-helpers.js","sourceRoot":"","sources":["../src/event-helpers.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"event-processor.d.ts","sourceRoot":"","sources":["../src/event-processor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAM5C,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAKxD,wBAAsB,YAAY,CAChC,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,eAAe,EACnB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,aAAa,CAAC,CA4GxB"}
1
+ {"version":3,"file":"event-processor.d.ts","sourceRoot":"","sources":["../src/event-processor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAM5C,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAMxD,wBAAsB,YAAY,CAChC,GAAG,EAAE,UAAU,EACf,EAAE,EAAE,eAAe,EACnB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,aAAa,CAAC,CAsHxB"}
@@ -7,11 +7,21 @@
7
7
  import { filterAndCreateTickets } from './proposals.js';
8
8
  import { ingestTicketEvent } from './ticket-worker.js';
9
9
  export { classifyQaError } from './event-helpers.js';
10
+ import { validateAndSanitizeEventPayload } from './event-helpers.js';
10
11
  import { handleScoutOutput, handleProposalsReviewed, handleProposalsFiltered } from './event-handlers-scout.js';
11
12
  import { handlePlanSubmitted, handleTicketResult, handlePrCreated } from './event-handlers-ticket.js';
12
13
  import { handleQaCommandResult, handleQaPassed, handleQaFailed } from './event-handlers-qa.js';
13
14
  export async function processEvent(run, db, type, payload, project) {
14
15
  const s = run.require();
16
+ const validatedPayload = validateAndSanitizeEventPayload(type, payload);
17
+ if (!validatedPayload.ok) {
18
+ return {
19
+ processed: false,
20
+ phase_changed: false,
21
+ message: validatedPayload.error,
22
+ };
23
+ }
24
+ const safePayload = validatedPayload.payload;
15
25
  // Ensure learnings loaded for any event handler that might need them
16
26
  run.ensureLearningsLoaded();
17
27
  // ---------------------------------------------------------------------------
@@ -25,11 +35,11 @@ export async function processEvent(run, db, type, payload, project) {
25
35
  'PR_CREATED', 'TICKET_RESULT', 'PLAN_SUBMITTED', 'QA_PASSED', 'QA_FAILED', 'QA_COMMAND_RESULT',
26
36
  ]);
27
37
  if (s.phase === 'PARALLEL_EXECUTE' && TICKET_WORKER_EVENTS.has(type)) {
28
- const ticketId = payload['ticket_id'];
38
+ const ticketId = typeof safePayload['ticket_id'] === 'string' ? safePayload['ticket_id'] : undefined;
29
39
  if (ticketId && run.getTicketWorker(ticketId)) {
30
40
  // Forward to ticket worker
31
41
  const ctx = { run, db, project: project ?? { id: s.project_id, rootPath: run.rootPath } };
32
- const result = await ingestTicketEvent(ctx, ticketId, type, payload);
42
+ const result = await ingestTicketEvent(ctx, ticketId, type, safePayload);
33
43
  return {
34
44
  processed: result.processed,
35
45
  phase_changed: false,
@@ -42,36 +52,37 @@ export async function processEvent(run, db, type, payload, project) {
42
52
  // -----------------------------------------------------------------
43
53
  // Scout events
44
54
  // -----------------------------------------------------------------
45
- case 'SCOUT_OUTPUT': return handleScoutOutput(ctx, payload);
46
- case 'PROPOSALS_REVIEWED': return handleProposalsReviewed(ctx, payload);
47
- case 'PROPOSALS_FILTERED': return handleProposalsFiltered(ctx, payload);
55
+ case 'SCOUT_OUTPUT': return handleScoutOutput(ctx, safePayload);
56
+ case 'PROPOSALS_REVIEWED': return handleProposalsReviewed(ctx, safePayload);
57
+ case 'PROPOSALS_FILTERED': return handleProposalsFiltered(ctx, safePayload);
48
58
  // -----------------------------------------------------------------
49
59
  // Plan events
50
60
  // -----------------------------------------------------------------
51
- case 'PLAN_SUBMITTED': return handlePlanSubmitted(ctx, payload);
61
+ case 'PLAN_SUBMITTED': return handlePlanSubmitted(ctx, safePayload);
52
62
  // -----------------------------------------------------------------
53
63
  // Execution events
54
64
  // -----------------------------------------------------------------
55
- case 'TICKET_RESULT': return handleTicketResult(ctx, payload);
65
+ case 'TICKET_RESULT': return handleTicketResult(ctx, safePayload);
56
66
  // -----------------------------------------------------------------
57
67
  // QA events
58
68
  // -----------------------------------------------------------------
59
- case 'QA_COMMAND_RESULT': return handleQaCommandResult(ctx, payload);
60
- case 'QA_PASSED': return handleQaPassed(ctx, payload);
61
- case 'QA_FAILED': return handleQaFailed(ctx, payload);
69
+ case 'QA_COMMAND_RESULT': return handleQaCommandResult(ctx, safePayload);
70
+ case 'QA_PASSED': return handleQaPassed(ctx, safePayload);
71
+ case 'QA_FAILED': return handleQaFailed(ctx, safePayload);
62
72
  // -----------------------------------------------------------------
63
73
  // PR events
64
74
  // -----------------------------------------------------------------
65
- case 'PR_CREATED': return handlePrCreated(ctx, payload);
75
+ case 'PR_CREATED': return handlePrCreated(ctx, safePayload);
66
76
  // -----------------------------------------------------------------
67
77
  // User overrides
68
78
  // -----------------------------------------------------------------
69
79
  case 'USER_OVERRIDE': {
70
- if (typeof payload['hint'] === 'string') {
71
- run.addHint(payload['hint']);
80
+ const hint = typeof safePayload['hint'] === 'string' ? safePayload['hint'] : undefined;
81
+ if (hint !== undefined) {
82
+ run.addHint(hint);
72
83
  return { processed: true, phase_changed: false, message: 'Hint added' };
73
84
  }
74
- if (payload['cancel'] === true) {
85
+ if (safePayload['cancel'] === true) {
75
86
  run.setPhase('DONE');
76
87
  return {
77
88
  processed: true,
@@ -80,7 +91,7 @@ export async function processEvent(run, db, type, payload, project) {
80
91
  message: 'Session cancelled by user',
81
92
  };
82
93
  }
83
- if (payload['skip_review'] === true) {
94
+ if (safePayload['skip_review'] === true) {
84
95
  s.skip_review = true;
85
96
  // If there are pending proposals waiting for review, create tickets immediately
86
97
  if (s.pending_proposals && s.pending_proposals.length > 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"event-processor.js","sourceRoot":"","sources":["../src/event-processor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"event-processor.js","sourceRoot":"","sources":["../src/event-processor.ts"],"names":[],"mappings":"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"}
package/dist/server.js CHANGED
@@ -21,7 +21,7 @@ export async function createServer(options) {
21
21
  const getState = () => state;
22
22
  const server = new McpServer({
23
23
  name: 'promptwheel',
24
- version: '0.7.2',
24
+ version: '0.7.3',
25
25
  });
26
26
  // Register tool groups
27
27
  registerSessionTools(server, getState);
@@ -1 +1 @@
1
- {"version":3,"file":"ticket-worker.d.ts","sourceRoot":"","sources":["../src/ticket-worker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EACV,kBAAkB,EAGnB,MAAM,YAAY,CAAC;AAiBpB,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,UAAU,CAAC;IAChB,EAAE,EAAE,eAAe,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,oBAAoB,CAAC,CAoP/B;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAsKlD"}
1
+ {"version":3,"file":"ticket-worker.d.ts","sourceRoot":"","sources":["../src/ticket-worker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEzD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,KAAK,EACV,kBAAkB,EAGnB,MAAM,YAAY,CAAC;AAiBpB,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,UAAU,CAAC;IAChB,EAAE,EAAE,eAAe,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,WAAW,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,oBAAoB,CAAC,CAoP/B;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,mBAAmB,EACxB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,OAAO,CAAC;IAAE,SAAS,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC,CAgLlD"}