steroids-cli 0.10.58 → 0.10.60
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.
- package/dist/commands/llm.js +1 -1
- package/dist/commands/loop-phases-reviewer-resolution.d.ts +1 -0
- package/dist/commands/loop-phases-reviewer-resolution.d.ts.map +1 -1
- package/dist/commands/loop-phases-reviewer-resolution.js +109 -64
- package/dist/commands/loop-phases-reviewer-resolution.js.map +1 -1
- package/dist/commands/loop-phases-reviewer.d.ts.map +1 -1
- package/dist/commands/loop-phases-reviewer.js +4 -7
- package/dist/commands/loop-phases-reviewer.js.map +1 -1
- package/dist/commands/tasks.d.ts.map +1 -1
- package/dist/commands/tasks.js +37 -8
- package/dist/commands/tasks.js.map +1 -1
- package/dist/config/ai-setup.d.ts.map +1 -1
- package/dist/config/ai-setup.js +2 -0
- package/dist/config/ai-setup.js.map +1 -1
- package/dist/config/loader.d.ts +1 -0
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js.map +1 -1
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +4 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/database/feedback-queries.d.ts +22 -0
- package/dist/database/feedback-queries.d.ts.map +1 -0
- package/dist/database/feedback-queries.js +58 -0
- package/dist/database/feedback-queries.js.map +1 -0
- package/dist/database/queries.d.ts +3 -0
- package/dist/database/queries.d.ts.map +1 -1
- package/dist/database/queries.js +19 -6
- package/dist/database/queries.js.map +1 -1
- package/dist/database/schema.d.ts +2 -2
- package/dist/database/schema.d.ts.map +1 -1
- package/dist/database/schema.js +14 -0
- package/dist/database/schema.js.map +1 -1
- package/dist/orchestrator/coordinator.d.ts.map +1 -1
- package/dist/orchestrator/coordinator.js +8 -11
- package/dist/orchestrator/coordinator.js.map +1 -1
- package/dist/orchestrator/post-reviewer.d.ts +1 -1
- package/dist/orchestrator/post-reviewer.d.ts.map +1 -1
- package/dist/orchestrator/post-reviewer.js +17 -22
- package/dist/orchestrator/post-reviewer.js.map +1 -1
- package/dist/orchestrator/reviewer-decision-parser.d.ts +15 -0
- package/dist/orchestrator/reviewer-decision-parser.d.ts.map +1 -0
- package/dist/orchestrator/reviewer-decision-parser.js +40 -0
- package/dist/orchestrator/reviewer-decision-parser.js.map +1 -0
- package/dist/orchestrator/reviewer.d.ts +2 -0
- package/dist/orchestrator/reviewer.d.ts.map +1 -1
- package/dist/orchestrator/reviewer.js +33 -48
- package/dist/orchestrator/reviewer.js.map +1 -1
- package/dist/orchestrator/signal-parser.d.ts +0 -4
- package/dist/orchestrator/signal-parser.d.ts.map +1 -1
- package/dist/orchestrator/signal-parser.js +4 -14
- package/dist/orchestrator/signal-parser.js.map +1 -1
- package/dist/prompts/coder.d.ts +4 -0
- package/dist/prompts/coder.d.ts.map +1 -1
- package/dist/prompts/coder.js +39 -33
- package/dist/prompts/coder.js.map +1 -1
- package/dist/prompts/instruction-files.d.ts +2 -2
- package/dist/prompts/instruction-files.d.ts.map +1 -1
- package/dist/prompts/instruction-files.js +17 -19
- package/dist/prompts/instruction-files.js.map +1 -1
- package/dist/prompts/path-links.d.ts +7 -0
- package/dist/prompts/path-links.d.ts.map +1 -0
- package/dist/prompts/path-links.js +28 -0
- package/dist/prompts/path-links.js.map +1 -0
- package/dist/prompts/prompt-helpers.d.ts +11 -1
- package/dist/prompts/prompt-helpers.d.ts.map +1 -1
- package/dist/prompts/prompt-helpers.js +82 -26
- package/dist/prompts/prompt-helpers.js.map +1 -1
- package/dist/prompts/reviewer-template-sections.d.ts +9 -0
- package/dist/prompts/reviewer-template-sections.d.ts.map +1 -0
- package/dist/prompts/reviewer-template-sections.js +260 -0
- package/dist/prompts/reviewer-template-sections.js.map +1 -0
- package/dist/prompts/reviewer.d.ts +6 -0
- package/dist/prompts/reviewer.d.ts.map +1 -1
- package/dist/prompts/reviewer.js +33 -261
- package/dist/prompts/reviewer.js.map +1 -1
- package/dist/runners/global-db-sessions.d.ts.map +1 -1
- package/dist/runners/global-db-sessions.js +5 -1
- package/dist/runners/global-db-sessions.js.map +1 -1
- package/dist/runners/wakeup-sanitise.d.ts +1 -0
- package/dist/runners/wakeup-sanitise.d.ts.map +1 -1
- package/dist/runners/wakeup-sanitise.js +36 -7
- package/dist/runners/wakeup-sanitise.js.map +1 -1
- package/package.json +1 -1
|
@@ -19,37 +19,44 @@ const tokens_js_1 = require("../utils/tokens.js");
|
|
|
19
19
|
const submission_resolution_js_1 = require("../git/submission-resolution.js");
|
|
20
20
|
const history_manager_js_1 = require("./history-manager.js");
|
|
21
21
|
const base_runner_js_1 = require("./base-runner.js");
|
|
22
|
+
const reviewer_decision_parser_js_1 = require("./reviewer-decision-parser.js");
|
|
22
23
|
/**
|
|
23
24
|
* Deterministic policy engine for multi-reviewer decisions
|
|
24
25
|
*/
|
|
25
26
|
function resolveDecision(results) {
|
|
26
27
|
if (results.length === 0)
|
|
27
|
-
return { decision: 'unclear', needsMerge: false };
|
|
28
|
-
// Use the decision matrix priority: REJECT > DISPUTE > APPROVE > SKIP
|
|
28
|
+
return { decision: 'unclear', needsMerge: false, route: 'direct' };
|
|
29
29
|
const decisions = results.map(r => r.decision);
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
30
|
+
const defined = decisions.filter((d) => d !== undefined);
|
|
31
|
+
const hasReject = defined.includes('reject');
|
|
32
|
+
const hasDispute = defined.includes('dispute');
|
|
33
|
+
const hasApprove = defined.includes('approve');
|
|
34
|
+
const hasSkip = defined.includes('skip');
|
|
35
|
+
const hasUndefined = decisions.some(d => d === undefined);
|
|
36
|
+
if (!hasUndefined && defined.length > 0 && defined.every(d => d === 'approve')) {
|
|
37
|
+
return { decision: 'approve', needsMerge: false, route: 'direct' };
|
|
34
38
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
return { decision: 'dispute', needsMerge: false };
|
|
39
|
+
if (!hasUndefined && defined.length > 0 && defined.every(d => d === 'skip')) {
|
|
40
|
+
return { decision: 'skip', needsMerge: false, route: 'direct' };
|
|
38
41
|
}
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
return { decision: 'approve', needsMerge: false };
|
|
42
|
+
if (!hasUndefined && defined.length > 0 && defined.every(d => d === 'dispute')) {
|
|
43
|
+
return { decision: 'dispute', needsMerge: false, route: 'direct' };
|
|
42
44
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
45
|
+
if (!hasUndefined && !hasDispute && hasReject && defined.every(d => d === 'reject')) {
|
|
46
|
+
const rejectCount = defined.length;
|
|
47
|
+
return {
|
|
48
|
+
decision: 'reject',
|
|
49
|
+
needsMerge: rejectCount > 1,
|
|
50
|
+
route: rejectCount > 1 ? 'local_reject_merge' : 'direct',
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
if (!hasUndefined && !hasReject && !hasDispute && hasApprove && hasSkip) {
|
|
54
|
+
return { decision: 'unclear', needsMerge: false, route: 'arbitrate' };
|
|
50
55
|
}
|
|
51
|
-
|
|
52
|
-
|
|
56
|
+
if (hasReject || hasDispute || hasUndefined) {
|
|
57
|
+
return { decision: 'unclear', needsMerge: false, route: 'arbitrate' };
|
|
58
|
+
}
|
|
59
|
+
return { decision: 'unclear', needsMerge: false, route: 'direct' };
|
|
53
60
|
}
|
|
54
61
|
/**
|
|
55
62
|
* Helper to get reviewer configurations, handling both singular and plural config
|
|
@@ -94,31 +101,6 @@ async function invokeReviewers(task, projectPath, reviewerConfigs, coordinatorGu
|
|
|
94
101
|
}
|
|
95
102
|
});
|
|
96
103
|
}
|
|
97
|
-
/**
|
|
98
|
-
* Parse reviewer output for decision
|
|
99
|
-
*/
|
|
100
|
-
function parseReviewerDecision(output) {
|
|
101
|
-
const tokenMap = {
|
|
102
|
-
APPROVE: 'approve',
|
|
103
|
-
REJECT: 'reject',
|
|
104
|
-
DISPUTE: 'dispute',
|
|
105
|
-
SKIP: 'skip',
|
|
106
|
-
};
|
|
107
|
-
const explicitToken = output.match(/^\s*(?:\*\*)?DECISION(?:\*\*)?\s*(?::|-)\s*(APPROVE|REJECT|DISPUTE|SKIP)\b/im)?.[1]?.toUpperCase();
|
|
108
|
-
const firstNonEmptyLine = output.split('\n').find(line => line.trim().length > 0)?.trim();
|
|
109
|
-
const firstLineToken = firstNonEmptyLine?.match(/^(APPROVE|REJECT|DISPUTE|SKIP)\b/i)?.[1]?.toUpperCase();
|
|
110
|
-
const resolvedToken = explicitToken || firstLineToken;
|
|
111
|
-
if (!resolvedToken || !tokenMap[resolvedToken]) {
|
|
112
|
-
return {};
|
|
113
|
-
}
|
|
114
|
-
const decision = tokenMap[resolvedToken];
|
|
115
|
-
const notesMatch = output.match(/(?:notes?|reason|feedback|issues?|comments?):\s*["']?([^"'\n]+)/i);
|
|
116
|
-
const extractedNotes = notesMatch?.[1]?.trim();
|
|
117
|
-
if (decision === 'reject') {
|
|
118
|
-
return { decision, notes: extractedNotes || 'See reviewer output for details' };
|
|
119
|
-
}
|
|
120
|
-
return { decision, notes: extractedNotes };
|
|
121
|
-
}
|
|
122
104
|
class ReviewerRunner extends base_runner_js_1.BaseRunner {
|
|
123
105
|
async runTask(task, projectPath, coordinatorGuidance, coordinatorDecision, reviewerConfig, runnerId) {
|
|
124
106
|
const config = (0, loader_js_1.loadConfig)(projectPath);
|
|
@@ -193,6 +175,7 @@ class ReviewerRunner extends base_runner_js_1.BaseRunner {
|
|
|
193
175
|
config,
|
|
194
176
|
coordinatorGuidance,
|
|
195
177
|
coordinatorDecision,
|
|
178
|
+
reviewerCustomInstructions: effectiveReviewerConfig?.customInstructions,
|
|
196
179
|
};
|
|
197
180
|
let prompt;
|
|
198
181
|
if (resumeSessionId) {
|
|
@@ -255,11 +238,12 @@ class ReviewerRunner extends base_runner_js_1.BaseRunner {
|
|
|
255
238
|
console.log(`Exit code: ${baseResult.exitCode}`);
|
|
256
239
|
console.log(`Duration: ${(baseResult.duration / 1000).toFixed(1)}s`);
|
|
257
240
|
console.log(`${'='.repeat(60)}\n`);
|
|
258
|
-
const
|
|
241
|
+
const parsedDecision = (0, reviewer_decision_parser_js_1.parseReviewerDecisionSignal)(baseResult.stdout);
|
|
242
|
+
const decision = parsedDecision.decision === 'unclear' ? undefined : parsedDecision.decision;
|
|
259
243
|
return {
|
|
260
244
|
...baseResult,
|
|
261
245
|
decision,
|
|
262
|
-
notes,
|
|
246
|
+
notes: decision === 'reject' ? 'See reviewer output for details' : undefined,
|
|
263
247
|
provider: providerName,
|
|
264
248
|
model: modelName,
|
|
265
249
|
isNoOp: Boolean(submissionNotes?.startsWith('[NO_OP_SUBMISSION]')),
|
|
@@ -300,6 +284,7 @@ class ReviewerRunner extends base_runner_js_1.BaseRunner {
|
|
|
300
284
|
sectionName,
|
|
301
285
|
taskCommits,
|
|
302
286
|
config,
|
|
287
|
+
reviewerCustomInstructions: effectiveReviewerConfig?.customInstructions,
|
|
303
288
|
};
|
|
304
289
|
const prompt = (0, reviewer_js_1.generateBatchReviewerPrompt)(context);
|
|
305
290
|
const promptFile = this.writePromptToTempFile(prompt, 'reviewer');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reviewer.js","sourceRoot":"","sources":["../../src/orchestrator/reviewer.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"reviewer.js","sourceRoot":"","sources":["../../src/orchestrator/reviewer.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA4CH,0CAqCC;AAKD,gDAQC;AAKD,oDAEC;AAKD,0CAgCC;AAoSD,wCAUC;AAED,kDAQC;AA/bD,uDAOgC;AAChC,6DAAyD;AACzD,wDAMgC;AAEhC,mDAA2F;AAC3F,4DAAiE;AACjE,kDAAiD;AACjD,8EAAkI;AAClI,6DAAsD;AACtD,qDAAqE;AACrE,+EAA4E;AAe5E;;GAEG;AACH,SAAgB,eAAe,CAC7B,OAAyB;IAEzB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAE7F,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,EAA0C,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;IACjG,MAAM,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC/C,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,YAAY,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,CAAC;IAE1D,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;QAC/E,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACrE,CAAC;IACD,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,MAAM,CAAC,EAAE,CAAC;QAC5E,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClE,CAAC;IACD,IAAI,CAAC,YAAY,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,SAAS,CAAC,EAAE,CAAC;QAC/E,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IACrE,CAAC;IACD,IAAI,CAAC,YAAY,IAAI,CAAC,UAAU,IAAI,SAAS,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,EAAE,CAAC;QACpF,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC;QACnC,OAAO;YACL,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,WAAW,GAAG,CAAC;YAC3B,KAAK,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,QAAQ;SACzD,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,YAAY,IAAI,CAAC,SAAS,IAAI,CAAC,UAAU,IAAI,UAAU,IAAI,OAAO,EAAE,CAAC;QACxE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IACxE,CAAC;IACD,IAAI,SAAS,IAAI,UAAU,IAAI,YAAY,EAAE,CAAC;QAC5C,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IACxE,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AACrE,CAAC;AAED;;GAEG;AACH,SAAgB,kBAAkB,CAAC,MAAsB;IACvD,IAAI,MAAM,CAAC,EAAE,EAAE,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3D,OAAO,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC;IAC7B,CAAC;IACD,IAAI,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC;QACxB,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB,CAAC,MAAsB;IACzD,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,IAAI,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACpE,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,eAAe,CACnC,IAAU,EACV,WAAmB,EACnB,eAAiC,EACjC,mBAA4B,EAC5B,mBAA4B,EAC5B,QAAiB;IAEjB,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,UAAU,CACtC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAC3B,cAAc,CAAC,IAAI,EAAE,WAAW,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,CAAC,CAC9F,CACF,CAAC;IAEF,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC1B,IAAI,CAAC,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;YAC7B,OAAO,CAAC,CAAC,KAAK,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,kCAAkC;YAClC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,EAAE;gBACV,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,OAAO,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC;gBAC7C,QAAQ,EAAE,CAAC;gBACX,QAAQ,EAAE,KAAK;gBACf,QAAQ,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,QAAQ;gBACrC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,KAAK;gBAC/B,MAAM,EAAE,KAAK;aACd,CAAC;QACJ,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAMD,MAAM,cAAe,SAAQ,2BAAU;IAC9B,KAAK,CAAC,OAAO,CAClB,IAAU,EACV,WAAmB,EACnB,mBAA4B,EAC5B,mBAA4B,EAC5B,cAA+B,EAC/B,QAAiB;QAEjB,MAAM,MAAM,GAAG,IAAA,sBAAU,EAAC,WAAW,CAAC,CAAC;QACvC,MAAM,uBAAuB,GAAG,cAAc,IAAI,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC;QAEtE,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QACvC,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,oBAAoB,IAAI,CAAC,eAAe,KAAK,CAAC,CAAC;QAC3D,OAAO,CAAC,GAAG,CAAC,aAAa,uBAAuB,EAAE,QAAQ,IAAI,gBAAgB,EAAE,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,UAAU,uBAAuB,EAAE,KAAK,IAAI,gBAAgB,EAAE,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,YAAY,GAAkB,EAAE,CAAC;QACrC,IAAI,gBAAgB,GAAyC,EAAE,CAAC;QAChE,IAAI,eAAe,GAAkB,IAAI,CAAC;QAC1C,IAAI,eAAe,GAAkB,IAAI,CAAC;QAC1C,IAAI,oBAAoB,GAAkB,IAAI,CAAC;QAC/C,IAAI,sBAAsB,GAAa,EAAE,CAAC;QAC1C,IAAI,2BAA2B,GAAa,EAAE,CAAC;QAE/C,IAAI,CAAC;YACH,IAAA,4BAAY,EAAC,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE;gBAC/B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;oBACpB,MAAM,eAAe,GAAG,IAAA,sBAAS,EAAC,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC;oBACtE,YAAY,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;wBACvC,EAAE,EAAE,CAAC,CAAC,EAAE;wBACR,KAAK,EAAE,CAAC,CAAC,KAAK;wBACd,MAAM,EAAE,CAAC,CAAC,MAAM;qBACjB,CAAC,CAAC,CAAC;gBACN,CAAC;gBAED,gBAAgB,GAAG,IAAA,8BAAiB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,OAAO,CAAC,GAAG,CAAC,SAAS,gBAAgB,CAAC,MAAM,sCAAsC,CAAC,CAAC;gBACtF,CAAC;gBAED,eAAe,GAAG,IAAA,qCAAwB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBACxD,IAAI,eAAe,EAAE,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,sCAAsC,CAAC,CAAC;gBACtD,CAAC;gBAED,MAAM,iBAAiB,GAAG,IAAA,qEAA0C,EAClE,WAAW,EACX,IAAA,oCAAuB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CACrC,CAAC;gBACF,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,EAAE,CAAC;oBAC1C,MAAM,YAAY,GAAG,iBAAiB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC;oBACtE,MAAM,IAAI,KAAK,CACb,sDAAsD,IAAI,CAAC,EAAE,KAAK,iBAAiB,CAAC,MAAM,IAAI,eAAe,eAAe,YAAY,GAAG,CAC5I,CAAC;gBACJ,CAAC;gBACD,oBAAoB,GAAG,iBAAiB,CAAC,kBAAkB,CAAC;gBAC5D,sBAAsB,GAAG,iBAAiB,CAAC,wBAAwB,CAAC;gBACpE,2BAA2B,GAAG,iBAAiB,CAAC,eAAe,CAAC;gBAChE,OAAO,CAAC,GAAG,CAAC,kCAAkC,sBAAsB,CAAC,MAAM,wBAAwB,oBAAoB,EAAE,CAAC,CAAC;gBAC3H,IAAI,2BAA2B,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC3C,OAAO,CAAC,GAAG,CAAC,YAAY,2BAA2B,CAAC,MAAM,6CAA6C,CAAC,CAAC;gBAC3G,CAAC;gBAED,IAAI,uBAAuB,EAAE,QAAQ,IAAI,uBAAuB,EAAE,KAAK,EAAE,CAAC;oBACxE,eAAe,GAAG,IAAA,iCAAoB,EACpC,EAAE,EACF,IAAI,CAAC,EAAE,EACP,UAAU,EACV,uBAAuB,CAAC,QAAQ,EAChC,uBAAuB,CAAC,KAAK,CAC9B,CAAC;oBACF,IAAI,eAAe,EAAE,CAAC;wBACpB,OAAO,CAAC,GAAG,CAAC,4BAA4B,eAAe,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,kCAAkC,CAAC,CAAC;oBAC7G,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,MAAM,IAAI,KAAK,CAAC,qCAAqC,OAAO,EAAE,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,aAAa,GAAG,uBAAuB,EAAE,KAAK,IAAI,SAAS,CAAC;QAElE,MAAM,OAAO,GAA0B;YACrC,IAAI;YACJ,WAAW;YACX,aAAa;YACb,oBAAoB,EAAE,oBAAqB;YAC3C,sBAAsB;YACtB,2BAA2B;YAC3B,YAAY;YACZ,gBAAgB;YAChB,eAAe;YACf,MAAM;YACN,mBAAmB;YACnB,mBAAmB;YACnB,0BAA0B,EAAE,uBAAuB,EAAE,kBAAkB;SACxE,CAAC;QAEF,IAAI,MAAc,CAAC;QACnB,IAAI,eAAe,EAAE,CAAC;YACpB,MAAM,GAAG,IAAA,iDAAmC,EAAC,OAAO,CAAC,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,IAAA,oCAAsB,EAAC,OAAO,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAElE,IAAI,CAAC;YACH,IAAI,UAA4B,CAAC;YACjC,IAAI,eAAe,GAAG,KAAK,CAAC;YAC5B,MAAM,YAAY,GAAG,uBAAuB,EAAE,QAAQ,IAAI,SAAS,CAAC;YACpE,MAAM,SAAS,GAAG,uBAAuB,EAAE,KAAK,IAAI,SAAS,CAAC;YAE9D,IAAI,CAAC;gBACH,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CACpC,UAAU,EACV,UAAU,EACV,YAAY,EACZ,SAAS,EACT,OAAO,EACP,IAAI,CAAC,EAAE,EACP,WAAW,EACX,eAAe,IAAI,SAAS,EAC5B,QAAQ,CACT,CAAC;YACJ,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,IAAI,GAAG,YAAY,mCAAoB,EAAE,CAAC;oBACxC,OAAO,CAAC,IAAI,CAAC,iCAAkC,eAAiC,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,6CAA6C,CAAC,CAAC;oBAChJ,eAAe,GAAG,IAAI,CAAC;oBACvB,UAAU,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;gBACrG,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,CAAC;gBACZ,CAAC;YACH,CAAC;YAED,IAAI,eAAe,IAAI,eAAe,EAAE,CAAC;gBACvC,IAAI,aAAa,GAAG,EAAE,CAAC;gBACvB,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;gBAC3E,MAAM,gBAAgB,GAAG,MAAM,qBAAqB,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC;gBAC9E,MAAM,SAAS,GAAG,gBAAgB,GAAG,IAAI,CAAC;gBAE1C,IAAI,CAAC;oBACH,MAAM,WAAW,GAAG,EAAE,GAAG,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;oBACzD,MAAM,UAAU,GAAG,IAAA,oCAAsB,EAAC,WAAW,CAAC,CAAC;oBAEvD,MAAM,aAAa,GAAG,mCAAc,CAAC,gCAAgC,CACnE,WAAW,EACX,IAAI,CAAC,EAAE,EACP,eAAe,EACf,UAAU,EACV,SAAS,EACT,SAAS,CACV,CAAC;oBAEF,aAAa,GAAG,aAAa,CAAC,WAAW,CAAC;oBAE1C,IAAA,4BAAY,EAAC,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE;wBAC9B,IAAA,8BAAiB,EAAC,EAAE,EAAE,eAAgB,CAAC,CAAC;oBAC3C,CAAC,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,CAAM,EAAE,CAAC;oBACf,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC;wBAAE,MAAM,CAAC,CAAC;oBACrD,aAAa,GAAG,IAAA,oCAAsB,EAAC,OAAO,CAAC,CAAC;oBAChD,IAAI,IAAA,uBAAW,EAAC,aAAa,EAAE,SAAS,CAAC,GAAG,SAAS,EAAE,CAAC;wBACrD,MAAM,IAAI,KAAK,CAAC,2GAA2G,CAAC,CAAC;oBAChI,CAAC;gBACJ,CAAC;gBAED,MAAM,eAAe,GAAG,IAAI,CAAC,qBAAqB,CAAC,aAAa,EAAE,UAAU,CAAC,CAAC;gBAC9E,IAAI,CAAC;oBACH,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CACpC,eAAe,EACf,UAAU,EACV,YAAY,EACZ,SAAS,EACT,OAAO,EACP,IAAI,CAAC,EAAE,EACP,WAAW,EACX,SAAS,EACT,QAAQ,CACT,CAAC;gBACJ,CAAC;wBAAS,CAAC;oBACT,IAAI,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACnC,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,cAAc,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAEnC,MAAM,cAAc,GAAG,IAAA,yDAA2B,EAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACtE,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC;YAE7F,OAAO;gBACL,GAAG,UAAU;gBACb,QAAQ;gBACR,KAAK,EAAE,QAAQ,KAAK,QAAQ,CAAC,CAAC,CAAC,iCAAiC,CAAC,CAAC,CAAC,SAAS;gBAC5E,QAAQ,EAAE,YAAY;gBACtB,KAAK,EAAE,SAAS;gBAChB,MAAM,EAAE,OAAO,CAAE,eAAiC,EAAE,UAAU,CAAC,oBAAoB,CAAC,CAAC;aACtF,CAAC;QACJ,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,QAAQ,CACnB,KAAa,EACb,WAAmB,EACnB,WAAmB,EACnB,cAA+B;QAE/B,MAAM,MAAM,GAAG,IAAA,sBAAU,EAAC,WAAW,CAAC,CAAC;QACvC,MAAM,uBAAuB,GAAG,cAAc,IAAI,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC;QAEtE,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,4BAA4B,WAAW,GAAG,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACtC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,aAAa,uBAAuB,EAAE,QAAQ,IAAI,gBAAgB,EAAE,CAAC,CAAC;QAClF,OAAO,CAAC,GAAG,CAAC,UAAU,uBAAuB,EAAE,KAAK,IAAI,gBAAgB,EAAE,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QAEnC,IAAI,WAAW,GAAkD,EAAE,CAAC;QACpE,IAAA,4BAAY,EAAC,WAAW,EAAE,CAAC,EAAE,EAAE,EAAE;YAC/B,MAAM,UAAU,GAAa,EAAE,CAAC;YAEhC,WAAW,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBAC7B,MAAM,oBAAoB,GAAG,IAAA,8DAAmC,EAC9D,WAAW,EACX,IAAA,oCAAuB,EAAC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,CACrC,CAAC;gBACF,IAAI,oBAAoB,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;oBAC/C,MAAM,YAAY,GAAG,oBAAoB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC;oBACzE,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,EAAE,KAAK,oBAAoB,CAAC,MAAM,eAAe,YAAY,GAAG,CAAC,CAAC;gBAC5F,CAAC;gBACD,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,UAAU,EAAE,oBAAoB,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YACrH,CAAC,CAAC,CAAC;YAEH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,KAAK,CAAC,oEAAoE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC/G,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,MAAM,OAAO,GAA+B;YAC1C,KAAK;YACL,WAAW;YACX,WAAW;YACX,WAAW;YACX,MAAM;YACN,0BAA0B,EAAE,uBAAuB,EAAE,kBAAkB;SACxE,CAAC;QAEF,MAAM,MAAM,GAAG,IAAA,yCAA2B,EAAC,OAAO,CAAC,CAAC;QACpD,MAAM,UAAU,GAAG,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAElE,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YAChE,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAC1C,UAAU,EACV,UAAU,EACV,uBAAuB,EAAE,QAAQ,IAAI,SAAS,EAC9C,uBAAuB,EAAE,KAAK,IAAI,SAAS,EAC3C,SAAS,EACT,SAAS,EACT,WAAW,CACZ,CAAC;YAEF,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACnC,OAAO,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;YACxC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;YAEnC,OAAO,EAAE,GAAG,UAAU,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;QACpD,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;CACF;AAEM,KAAK,UAAU,cAAc,CAClC,IAAU,EACV,WAAmB,EACnB,mBAA4B,EAC5B,mBAA4B,EAC5B,cAA+B,EAC/B,QAAiB;IAEjB,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;IACpC,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,WAAW,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,cAAc,EAAE,QAAQ,CAAC,CAAC;AAC/G,CAAC;AAEM,KAAK,UAAU,mBAAmB,CACvC,KAAa,EACb,WAAmB,EACnB,WAAmB,EACnB,cAA+B;IAE/B,MAAM,MAAM,GAAG,IAAI,cAAc,EAAE,CAAC;IACpC,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;AAC1E,CAAC"}
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Strict parser for extracting routing signals from LLM plain text output.
|
|
3
|
-
* Replaces fragile JSON schema parsing.
|
|
4
|
-
*/
|
|
5
1
|
export type CoderSignal = 'review' | 'retry' | 'error' | 'unclear';
|
|
6
2
|
export type ConfidenceLevel = 'high' | 'medium' | 'low';
|
|
7
3
|
export type ReviewerDecision = 'approve' | 'reject' | 'dispute' | 'skip' | 'unclear';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signal-parser.d.ts","sourceRoot":"","sources":["../../src/orchestrator/signal-parser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"signal-parser.d.ts","sourceRoot":"","sources":["../../src/orchestrator/signal-parser.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,OAAO,GAAG,OAAO,GAAG,SAAS,CAAC;AACnE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;AACxD,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAAC;AAErF,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACzD;AAOD,qBAAa,YAAY;IACvB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,eAAe;IAI9B;;;OAGG;WACW,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW;IAiB3D;;;OAGG;WACW,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAM1D;;;OAGG;WACW,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,eAAe;IAMhE;;OAEG;WACW,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAMjE;;;OAGG;WACW,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB;IAoBvE,OAAO,CAAC,MAAM,CAAC,qBAAqB;IASpC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAKjC,OAAO,CAAC,MAAM,CAAC,sBAAsB;IAarC,OAAO,CAAC,MAAM,CAAC,eAAe;CAyB/B"}
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SignalParser = void 0;
|
|
2
4
|
/**
|
|
3
5
|
* Strict parser for extracting routing signals from LLM plain text output.
|
|
4
6
|
* Replaces fragile JSON schema parsing.
|
|
5
7
|
*/
|
|
6
|
-
|
|
7
|
-
exports.SignalParser = void 0;
|
|
8
|
+
const reviewer_decision_parser_js_1 = require("./reviewer-decision-parser.js");
|
|
8
9
|
class SignalParser {
|
|
9
10
|
/**
|
|
10
11
|
* Removes all content inside Markdown code fences
|
|
@@ -63,18 +64,7 @@ class SignalParser {
|
|
|
63
64
|
*/
|
|
64
65
|
static parseReviewerSignal(output) {
|
|
65
66
|
const cleanOutput = this.stripCodeBlocks(output);
|
|
66
|
-
const
|
|
67
|
-
let decision = 'unclear';
|
|
68
|
-
for (let i = lines.length - 1; i >= 0; i--) {
|
|
69
|
-
const line = lines[i].trim();
|
|
70
|
-
if (!line)
|
|
71
|
-
continue;
|
|
72
|
-
const match = line.match(/(?:\*\*)?DECISION(?:\*\*)?:\s*(?:\*\*)?(APPROVE|REJECT|DISPUTE|SKIP)(?:\*\*)?/i);
|
|
73
|
-
if (match) {
|
|
74
|
-
decision = match[1].toLowerCase();
|
|
75
|
-
break;
|
|
76
|
-
}
|
|
77
|
-
}
|
|
67
|
+
const decision = (0, reviewer_decision_parser_js_1.parseReviewerDecisionSignal)(output).decision;
|
|
78
68
|
const followUpTasks = [];
|
|
79
69
|
const taskSectionMatch = cleanOutput.match(/###\s*Follow[- ]?Up\s*Tasks\s*([\s\S]*)/i);
|
|
80
70
|
if (taskSectionMatch) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signal-parser.js","sourceRoot":"","sources":["../../src/orchestrator/signal-parser.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"signal-parser.js","sourceRoot":"","sources":["../../src/orchestrator/signal-parser.ts"],"names":[],"mappings":"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"}
|
package/dist/prompts/coder.d.ts
CHANGED
|
@@ -14,6 +14,8 @@ export interface CoderPromptContext {
|
|
|
14
14
|
gitStatus?: string;
|
|
15
15
|
gitDiff?: string;
|
|
16
16
|
sectionTasks?: SectionTask[];
|
|
17
|
+
userFeedbackSummary?: string | null;
|
|
18
|
+
userFeedbackItems?: string[];
|
|
17
19
|
}
|
|
18
20
|
/**
|
|
19
21
|
* Generate a minimal delta prompt for a resumed coder session
|
|
@@ -30,6 +32,8 @@ export interface BatchCoderPromptContext {
|
|
|
30
32
|
tasks: Task[];
|
|
31
33
|
projectPath: string;
|
|
32
34
|
sectionName: string;
|
|
35
|
+
userFeedbackSummary?: string | null;
|
|
36
|
+
userFeedbackItems?: string[];
|
|
33
37
|
}
|
|
34
38
|
/**
|
|
35
39
|
* Generate the coder prompt for a batch of tasks
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coder.d.ts","sourceRoot":"","sources":["../../src/prompts/coder.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,
|
|
1
|
+
{"version":3,"file":"coder.d.ts","sourceRoot":"","sources":["../../src/prompts/coder.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACnE,OAAO,EAQL,KAAK,WAAW,EACjB,MAAM,qBAAqB,CAAC;AAK7B,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,cAAc,EAAE,CAAC;IACpC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,WAAW,EAAE,CAAC;IAC7B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CA2FpF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAqIvE;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,uBAAuB,GAAG,MAAM,CAyEjF;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAyG/E"}
|
package/dist/prompts/coder.js
CHANGED
|
@@ -11,11 +11,15 @@ exports.generateResumingCoderPrompt = generateResumingCoderPrompt;
|
|
|
11
11
|
const prompt_helpers_js_1 = require("./prompt-helpers.js");
|
|
12
12
|
const instruction_files_js_1 = require("./instruction-files.js");
|
|
13
13
|
const status_js_1 = require("../git/status.js");
|
|
14
|
+
const path_links_js_1 = require("./path-links.js");
|
|
14
15
|
/**
|
|
15
16
|
* Generate a minimal delta prompt for a resumed coder session
|
|
16
17
|
*/
|
|
17
18
|
function generateResumingCoderDeltaPrompt(context) {
|
|
18
|
-
const { task, rejectionHistory, coordinatorGuidance, sectionTasks } = context;
|
|
19
|
+
const { task, projectPath, rejectionHistory, coordinatorGuidance, sectionTasks, userFeedbackSummary, userFeedbackItems, } = context;
|
|
20
|
+
const userFeedbackSection = (0, prompt_helpers_js_1.formatUserFeedbackContextSection)({ userFeedbackSummary, userFeedbackItems });
|
|
21
|
+
const skillsSection = (0, prompt_helpers_js_1.buildSkillsSection)(projectPath);
|
|
22
|
+
const instructionsSection = (0, instruction_files_js_1.buildProjectInstructionsSection)(projectPath);
|
|
19
23
|
// Find the last rejection notes
|
|
20
24
|
const lastRejection = rejectionHistory && rejectionHistory.length > 0
|
|
21
25
|
? rejectionHistory[rejectionHistory.length - 1]
|
|
@@ -25,6 +29,8 @@ function generateResumingCoderDeltaPrompt(context) {
|
|
|
25
29
|
return `You are resuming work on task ${task.id}: "${task.title}".
|
|
26
30
|
All previous context is still in your session history.
|
|
27
31
|
Review your previous progress and complete the task.
|
|
32
|
+
${userFeedbackSection}
|
|
33
|
+
${skillsSection}${instructionsSection}
|
|
28
34
|
|
|
29
35
|
**REMINDER:**
|
|
30
36
|
1. BUILD MUST PASS before submitting
|
|
@@ -62,6 +68,8 @@ Do NOT use \`git diff HEAD\` alone — that only shows unstaged changes, not com
|
|
|
62
68
|
prompt += siblingBoundary + '\n';
|
|
63
69
|
}
|
|
64
70
|
prompt += `Fix these issues and resubmit. All previous context and code is still in your session.
|
|
71
|
+
${userFeedbackSection}
|
|
72
|
+
${skillsSection}${instructionsSection}
|
|
65
73
|
|
|
66
74
|
**REMINDER:**
|
|
67
75
|
1. Address ALL reviewer feedback
|
|
@@ -87,10 +95,14 @@ Do NOT use \`git diff HEAD\` alone — that only shows unstaged changes, not com
|
|
|
87
95
|
* Generate the coder prompt for a new task
|
|
88
96
|
*/
|
|
89
97
|
function generateCoderPrompt(context) {
|
|
90
|
-
const { task, projectPath, previousStatus, rejectionNotes, rejectionHistory, coordinatorGuidance, sectionTasks } = context;
|
|
98
|
+
const { task, projectPath, previousStatus, rejectionNotes, rejectionHistory, coordinatorGuidance, sectionTasks, userFeedbackSummary, userFeedbackItems, } = context;
|
|
91
99
|
const sourceRef = (0, prompt_helpers_js_1.getSourceFileReference)(projectPath, task.source_file);
|
|
100
|
+
const sourcePathForStart = task.source_file
|
|
101
|
+
? (0, path_links_js_1.formatPromptPath)(projectPath, task.source_file)
|
|
102
|
+
: 'the specification link above';
|
|
92
103
|
// Build rejection section with full history and coordinator guidance
|
|
93
104
|
const rejectionSection = (0, prompt_helpers_js_1.formatRejectionHistoryForCoder)(task.id, rejectionHistory, rejectionNotes, coordinatorGuidance);
|
|
105
|
+
const userFeedbackSection = (0, prompt_helpers_js_1.formatUserFeedbackContextSection)({ userFeedbackSummary, userFeedbackItems });
|
|
94
106
|
// Build file scope section
|
|
95
107
|
const fileScopeSection = (0, prompt_helpers_js_1.buildFileScopeSection)(task);
|
|
96
108
|
const fileAnchorSection = (0, prompt_helpers_js_1.buildFileAnchorSection)(task);
|
|
@@ -106,28 +118,22 @@ You are a CODER in an automated task execution system. Your job is to autonomous
|
|
|
106
118
|
|
|
107
119
|
---
|
|
108
120
|
|
|
109
|
-
##
|
|
110
|
-
|
|
111
|
-
**Task ID:** ${task.id}
|
|
112
|
-
**Title:** ${task.title}
|
|
113
|
-
**Rejection Count:** ${task.rejection_count}/15
|
|
114
|
-
**Project:** ${projectPath}
|
|
115
|
-
**CRITICAL WORKSPACE RULE:** You are operating inside an isolated workspace clone. DO NOT change directories out of your current working directory. All changes MUST be made in this current directory. If files referenced in the task do not exist in your current working directory, they either need to be CREATED (per the task specification) or the task spec refers to files on a different branch that have not been merged yet — in either case you must work only within your current directory. **Never navigate to \`../\` or any sibling directories. Never use absolute paths to access workspaces, clones, or any path outside your CWD.**
|
|
116
|
-
${fileScopeSection}${fileAnchorSection}${(0, prompt_helpers_js_1.formatSectionTasks)(task.id, sectionTasks, 'coder')}${(0, prompt_helpers_js_1.buildSkillsSection)(projectPath)}${(0, instruction_files_js_1.buildProjectInstructionsSection)(projectPath)}
|
|
117
|
-
---
|
|
118
|
-
|
|
119
|
-
## Specification
|
|
121
|
+
## Specification (Read First)
|
|
120
122
|
|
|
121
123
|
${sourceRef}
|
|
122
124
|
|
|
123
125
|
---
|
|
124
126
|
|
|
125
|
-
##
|
|
127
|
+
## Task Context
|
|
128
|
+
|
|
129
|
+
**CRITICAL WORKSPACE RULE:** You are operating inside an isolated workspace clone. DO NOT change directories out of your current working directory. All changes MUST be made in this current directory. If files referenced in the task do not exist in your current working directory, they either need to be CREATED (per the task specification) or the task spec refers to files on a different branch that have not been merged yet — in either case you must work only within your current directory. **Never navigate to \`../\` or any sibling directories. Never use absolute paths to access workspaces, clones, or any path outside your CWD.**
|
|
130
|
+
${fileScopeSection}${fileAnchorSection}${(0, prompt_helpers_js_1.formatSectionTasks)(task.id, sectionTasks, 'coder')}${(0, prompt_helpers_js_1.buildSkillsSection)(projectPath)}${(0, instruction_files_js_1.buildProjectInstructionsSection)(projectPath)}
|
|
126
131
|
|
|
127
132
|
**Recent Commits in Workspace:**
|
|
128
133
|
${recentCommitsSection}
|
|
129
134
|
|
|
130
135
|
Review relevant project files as needed for your implementation.
|
|
136
|
+
${userFeedbackSection}
|
|
131
137
|
${rejectionSection}
|
|
132
138
|
---
|
|
133
139
|
|
|
@@ -141,7 +147,7 @@ Before implementing anything, verify if the work is already done:
|
|
|
141
147
|
|
|
142
148
|
### 2. Implementation Phase
|
|
143
149
|
If the work is not done, implement the feature/fix:
|
|
144
|
-
1. **Read
|
|
150
|
+
1. **Read Linked Guidance Files:** Follow every file listed under "Required Instruction Files" and "Assigned Skills" before coding.
|
|
145
151
|
2. Read the specification carefully.
|
|
146
152
|
3. Add or update tests if a test directory exists.
|
|
147
153
|
|
|
@@ -204,14 +210,15 @@ Rules:
|
|
|
204
210
|
|
|
205
211
|
## Start Now
|
|
206
212
|
|
|
207
|
-
Begin by reading ${
|
|
213
|
+
Begin by reading ${sourcePathForStart} and implementing the task.
|
|
208
214
|
`;
|
|
209
215
|
}
|
|
210
216
|
/**
|
|
211
217
|
* Generate the coder prompt for a batch of tasks
|
|
212
218
|
*/
|
|
213
219
|
function generateBatchCoderPrompt(context) {
|
|
214
|
-
const { tasks, projectPath, sectionName } = context;
|
|
220
|
+
const { tasks, projectPath, sectionName, userFeedbackSummary, userFeedbackItems } = context;
|
|
221
|
+
const userFeedbackSection = (0, prompt_helpers_js_1.formatUserFeedbackContextSection)({ userFeedbackSummary, userFeedbackItems });
|
|
215
222
|
// Build task specs for each task
|
|
216
223
|
const taskSpecs = tasks.map((task, index) => {
|
|
217
224
|
const specRef = (0, prompt_helpers_js_1.getSourceFileReference)(projectPath, task.source_file);
|
|
@@ -233,19 +240,21 @@ You are a CODER assigned MULTIPLE tasks from section "${sectionName}".
|
|
|
233
240
|
**Total Tasks:** ${tasks.length}
|
|
234
241
|
**Project:** ${projectPath}
|
|
235
242
|
**CRITICAL WORKSPACE RULE:** You are operating inside an isolated workspace clone. DO NOT change directories out of your current working directory. All changes MUST be made in this current directory. If files referenced in the task do not exist in your current working directory, they either need to be CREATED (per the task specification) or the task spec refers to files on a different branch that have not been merged yet — in either case you must work only within your current directory. **Never navigate to \`../\` or any sibling directories. Never use absolute paths to access workspaces, clones, or any path outside your CWD.**
|
|
243
|
+
${(0, prompt_helpers_js_1.buildSkillsSection)(projectPath)}${(0, instruction_files_js_1.buildProjectInstructionsSection)(projectPath)}
|
|
236
244
|
|
|
237
245
|
---
|
|
238
246
|
|
|
239
247
|
## TASKS TO IMPLEMENT
|
|
240
248
|
|
|
241
249
|
${taskSpecs}
|
|
250
|
+
${userFeedbackSection}
|
|
242
251
|
|
|
243
252
|
---
|
|
244
253
|
|
|
245
254
|
## YOUR WORKFLOW
|
|
246
255
|
|
|
247
256
|
For EACH task:
|
|
248
|
-
1. **Read
|
|
257
|
+
1. **Read Linked Guidance Files:** Follow every file listed under "Required Instruction Files" and "Assigned Skills" before coding.
|
|
249
258
|
2. Read the specification carefully.
|
|
250
259
|
3. Implement the feature/fix.
|
|
251
260
|
4. Verify tools using \`which <command>\` before relying on them. If a tool is missing, FIRST look for any alternative tools or commands available on the system.
|
|
@@ -282,9 +291,10 @@ Begin with Task 1 and work through each task in order.
|
|
|
282
291
|
* Generate the coder prompt for resuming partial work
|
|
283
292
|
*/
|
|
284
293
|
function generateResumingCoderPrompt(context) {
|
|
285
|
-
const { task, projectPath, gitStatus, gitDiff, rejectionHistory, coordinatorGuidance, sectionTasks } = context;
|
|
294
|
+
const { task, projectPath, gitStatus, gitDiff, rejectionHistory, coordinatorGuidance, sectionTasks, userFeedbackSummary, userFeedbackItems, } = context;
|
|
286
295
|
const sourceRef = (0, prompt_helpers_js_1.getSourceFileReference)(projectPath, task.source_file);
|
|
287
296
|
const fileAnchorSection = (0, prompt_helpers_js_1.buildFileAnchorSection)(task);
|
|
297
|
+
const userFeedbackSection = (0, prompt_helpers_js_1.formatUserFeedbackContextSection)({ userFeedbackSummary, userFeedbackItems });
|
|
288
298
|
// Build rejection section with full history and coordinator guidance (same as normal prompt)
|
|
289
299
|
const rejectionSection = (0, prompt_helpers_js_1.formatRejectionHistoryForCoder)(task.id, rejectionHistory, undefined, coordinatorGuidance);
|
|
290
300
|
return `# TASK: ${task.id.substring(0, 8)} - ${task.title} (RESUMING)
|
|
@@ -294,15 +304,16 @@ You are a CODER resuming work on a partially completed task.
|
|
|
294
304
|
|
|
295
305
|
---
|
|
296
306
|
|
|
297
|
-
##
|
|
307
|
+
## Specification (Read First)
|
|
308
|
+
|
|
309
|
+
${sourceRef}
|
|
310
|
+
|
|
311
|
+
---
|
|
312
|
+
|
|
313
|
+
## Task Context
|
|
298
314
|
|
|
299
|
-
**Task ID:** ${task.id}
|
|
300
|
-
**Title:** ${task.title}
|
|
301
|
-
**Status:** in_progress (resuming)
|
|
302
|
-
**Rejection Count:** ${task.rejection_count}/15
|
|
303
|
-
**Project:** ${projectPath}
|
|
304
315
|
**CRITICAL WORKSPACE RULE:** You are operating inside an isolated workspace clone. DO NOT change directories out of your current working directory. All changes MUST be made in this current directory. If files referenced in the task do not exist in your current working directory, they either need to be CREATED (per the task specification) or the task spec refers to files on a different branch that have not been merged yet — in either case you must work only within your current directory. **Never navigate to \`../\` or any sibling directories. Never use absolute paths to access workspaces, clones, or any path outside your CWD.**
|
|
305
|
-
${fileAnchorSection}${(0, prompt_helpers_js_1.formatSectionTasks)(task.id, sectionTasks, 'coder')}${(0, instruction_files_js_1.buildProjectInstructionsSection)(projectPath)}
|
|
316
|
+
${fileAnchorSection}${(0, prompt_helpers_js_1.formatSectionTasks)(task.id, sectionTasks, 'coder')}${(0, prompt_helpers_js_1.buildSkillsSection)(projectPath)}${(0, instruction_files_js_1.buildProjectInstructionsSection)(projectPath)}
|
|
306
317
|
---
|
|
307
318
|
|
|
308
319
|
## Previous Work Detected
|
|
@@ -320,12 +331,13 @@ ${gitStatus ?? 'No uncommitted changes'}
|
|
|
320
331
|
\`\`\`diff
|
|
321
332
|
${gitDiff ?? 'No changes'}
|
|
322
333
|
\`\`\`
|
|
334
|
+
${userFeedbackSection}
|
|
323
335
|
|
|
324
336
|
---
|
|
325
337
|
|
|
326
338
|
## Your Instructions
|
|
327
339
|
|
|
328
|
-
1. **Read
|
|
340
|
+
1. **Read Linked Guidance Files:** Follow every file listed under "Required Instruction Files" and "Assigned Skills" before coding.
|
|
329
341
|
2. Review what the previous coder did
|
|
330
342
|
3. If the work looks good, complete it
|
|
331
343
|
4. If the work looks wrong, you may start fresh
|
|
@@ -357,12 +369,6 @@ You MUST implement the items listed under \`MUST_IMPLEMENT:\` before resubmittin
|
|
|
357
369
|
---
|
|
358
370
|
` : ''}
|
|
359
371
|
|
|
360
|
-
## Specification
|
|
361
|
-
|
|
362
|
-
${sourceRef}
|
|
363
|
-
|
|
364
|
-
---
|
|
365
|
-
|
|
366
372
|
## CRITICAL RULES
|
|
367
373
|
|
|
368
374
|
1. **NEVER touch .steroids/ directory**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coder.js","sourceRoot":"","sources":["../../src/prompts/coder.ts"],"names":[],"mappings":";AAAA;;;GAGG;;
|
|
1
|
+
{"version":3,"file":"coder.js","sourceRoot":"","sources":["../../src/prompts/coder.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAkCH,4EA2FC;AAKD,kDAqIC;AAgBD,4DAyEC;AAKD,kEAyGC;AA3cD,2DAS6B;AAC7B,iEAAyE;AACzE,gDAAoD;AACpD,mDAAmD;AAgBnD;;GAEG;AACH,SAAgB,gCAAgC,CAAC,OAA2B;IAC1E,MAAM,EACJ,IAAI,EACJ,WAAW,EACX,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,GAClB,GAAG,OAAO,CAAC;IACZ,MAAM,mBAAmB,GAAG,IAAA,oDAAgC,EAAC,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACzG,MAAM,aAAa,GAAG,IAAA,sCAAkB,EAAC,WAAW,CAAC,CAAC;IACtD,MAAM,mBAAmB,GAAG,IAAA,sDAA+B,EAAC,WAAW,CAAC,CAAC;IAEzE,gCAAgC;IAChC,MAAM,aAAa,GAAG,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC;QACnE,CAAC,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;QAC/C,CAAC,CAAC,IAAI,CAAC;IAET,IAAI,CAAC,aAAa,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAC3C,kEAAkE;QAClE,OAAO,iCAAiC,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,KAAK;;;EAGjE,mBAAmB;EACnB,aAAa,GAAG,mBAAmB;;;;;;CAMpC,CAAC;IACA,CAAC;IAED,IAAI,MAAM,GAAG,uDAAuD,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,KAAK,QAAQ,CAAC;IAEpG,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,IAAI,gBAAgB,aAAa,CAAC,gBAAgB;GACzD,aAAa,CAAC,KAAK,OAAO,CAAC;IAC5B,CAAC;IAED,IAAI,mBAAmB,EAAE,CAAC;QACxB,MAAM,IAAI;GACX,mBAAmB,OAAO,CAAC;IAC5B,CAAC;IAED,IAAI,mBAAmB,EAAE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACrD,MAAM,IAAI;0HAC4G,CAAC;IACzH,CAAC;IAED,MAAM,aAAa,GAAG,CAAC,aAAa,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,IAAI,KAAK,CAAC;IAChG,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,IAAI;;;;;;;;0FAQ4E,CAAC;QACvF,qGAAqG;QACrG,MAAM,eAAe,GAAG,IAAA,sCAAkB,EAAC,IAAI,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;QAC3E,IAAI,eAAe;YAAE,MAAM,IAAI,eAAe,GAAG,IAAI,CAAC;IACxD,CAAC;IAED,MAAM,IAAI;EACV,mBAAmB;EACnB,aAAa,GAAG,mBAAmB;;;;;;;;;;;;;;;;;;;CAmBpC,CAAC;IAEA,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,SAAgB,mBAAmB,CAAC,OAA2B;IAC7D,MAAM,EACJ,IAAI,EACJ,WAAW,EACX,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,GAClB,GAAG,OAAO,CAAC;IAEZ,MAAM,SAAS,GAAG,IAAA,0CAAsB,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACxE,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW;QACzC,CAAC,CAAC,IAAA,gCAAgB,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC;QACjD,CAAC,CAAC,8BAA8B,CAAC;IAEnC,qEAAqE;IACrE,MAAM,gBAAgB,GAAG,IAAA,kDAA8B,EAAC,IAAI,CAAC,EAAE,EAAE,gBAAgB,EAAE,cAAc,EAAE,mBAAmB,CAAC,CAAC;IACxH,MAAM,mBAAmB,GAAG,IAAA,oDAAgC,EAAC,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAEzG,2BAA2B;IAC3B,MAAM,gBAAgB,GAAG,IAAA,yCAAqB,EAAC,IAAI,CAAC,CAAC;IACrD,MAAM,iBAAiB,GAAG,IAAA,0CAAsB,EAAC,IAAI,CAAC,CAAC;IAEvD,6CAA6C;IAC7C,MAAM,aAAa,GAAG,IAAA,4BAAgB,EAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACvD,MAAM,oBAAoB,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC;QACnD,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;QAClF,CAAC,CAAC,0BAA0B,CAAC;IAE/B,OAAO,WAAW,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK;YAC/C,cAAc,gCAAgC,IAAI,CAAC,eAAe;;;;;;;;EAQ5E,SAAS;;;;;;;EAOT,gBAAgB,GAAG,iBAAiB,GAAG,IAAA,sCAAkB,EAAC,IAAI,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,GAAG,IAAA,sCAAkB,EAAC,WAAW,CAAC,GAAG,IAAA,sDAA+B,EAAC,WAAW,CAAC;;;EAG1K,oBAAoB;;;EAGpB,mBAAmB;EACnB,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqChB,IAAI,CAAC,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;CAc9B,CAAC,CAAC,CAAC,EAAE,GAAG,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC;iCACH,IAAI,CAAC,eAAe;;;;;;;;;;;;;;;;;;;;CAoBpD,CAAC,CAAC,CAAC,EAAE;;;;mBAIa,kBAAkB;CACpC,CAAC;AACF,CAAC;AAaD;;GAEG;AACH,SAAgB,wBAAwB,CAAC,OAAgC;IACvE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;IAC5F,MAAM,mBAAmB,GAAG,IAAA,oDAAgC,EAAC,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAEzG,iCAAiC;IACjC,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QAC1C,MAAM,OAAO,GAAG,IAAA,0CAAsB,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;QACtE,OAAO;WACA,KAAK,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK;eACpB,IAAI,CAAC,EAAE;;EAEpB,OAAO;CACR,CAAC;IACA,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAEnB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAErC,OAAO;;wDAE+C,WAAW;;;;cAIrD,WAAW;mBACN,KAAK,CAAC,MAAM;eAChB,WAAW;;EAExB,IAAA,sCAAkB,EAAC,WAAW,CAAC,GAAG,IAAA,sDAA+B,EAAC,WAAW,CAAC;;;;;;EAM9E,SAAS;EACT,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+BnB,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;;;;CAO5D,CAAC;AACF,CAAC;AAED;;GAEG;AACH,SAAgB,2BAA2B,CAAC,OAA2B;IACrE,MAAM,EACJ,IAAI,EACJ,WAAW,EACX,SAAS,EACT,OAAO,EACP,gBAAgB,EAChB,mBAAmB,EACnB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,GAClB,GAAG,OAAO,CAAC;IAEZ,MAAM,SAAS,GAAG,IAAA,0CAAsB,EAAC,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;IACxE,MAAM,iBAAiB,GAAG,IAAA,0CAAsB,EAAC,IAAI,CAAC,CAAC;IACvD,MAAM,mBAAmB,GAAG,IAAA,oDAAgC,EAAC,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAEzG,6FAA6F;IAC7F,MAAM,gBAAgB,GAAG,IAAA,kDAA8B,EAAC,IAAI,CAAC,EAAE,EAAE,gBAAgB,EAAE,SAAS,EAAE,mBAAmB,CAAC,CAAC;IAEnH,OAAO,WAAW,IAAI,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK;mCACxB,IAAI,CAAC,eAAe;;;;;;;;EAQrD,SAAS;;;;;;;EAOT,iBAAiB,GAAG,IAAA,sCAAkB,EAAC,IAAI,CAAC,EAAE,EAAE,YAAY,EAAE,OAAO,CAAC,GAAG,IAAA,sCAAkB,EAAC,WAAW,CAAC,GAAG,IAAA,sDAA+B,EAAC,WAAW,CAAC;;;;;;;;;;;EAWvJ,SAAS,IAAI,wBAAwB;;;;;EAKrC,OAAO,IAAI,YAAY;;EAEvB,mBAAmB;;;;;;;;;;;;EAYnB,gBAAgB;;;EAGhB,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,CAAC;;;;;;;;;;;;;;;;CAgB5B,CAAC,CAAC,CAAC,EAAE,GAAG,mBAAmB,EAAE,QAAQ,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;;;;;CAK3D,CAAC,CAAC,CAAC,EAAE;;;;;;;;;;;;;;CAcL,CAAC;AACF,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Project instruction file detection and injection
|
|
3
|
-
* Handles AGENTS.md, CLAUDE.md, GEMINI.md detection
|
|
3
|
+
* Handles AGENTS.md, CLAUDE.md, GEMINI.md detection for prompt injection
|
|
4
4
|
* Per-project override state stored in .steroids/instruction-files.json
|
|
5
5
|
*/
|
|
6
6
|
export interface InstructionOverrides {
|
|
@@ -37,7 +37,7 @@ export declare function isInstructionEnabled(overrides: InstructionOverrides, ke
|
|
|
37
37
|
export declare function getInstructionFilesList(projectPath: string): InstructionFile[];
|
|
38
38
|
/**
|
|
39
39
|
* Build the mandatory project instructions section for injection into prompts.
|
|
40
|
-
*
|
|
40
|
+
* Lists enabled instruction file links (without inlining content).
|
|
41
41
|
* Returns empty string if no instruction files are found or enabled.
|
|
42
42
|
*/
|
|
43
43
|
export declare function buildProjectInstructionsSection(projectPath: string): string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"instruction-files.d.ts","sourceRoot":"","sources":["../../src/prompts/instruction-files.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"instruction-files.d.ts","sourceRoot":"","sources":["../../src/prompts/instruction-files.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,qBAAqB;;;;;;;;;EAIxB,CAAC;AAEX,MAAM,MAAM,cAAc,GAAG,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC;AAEzE,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,oBAAoB,CAMlF;AAED,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,oBAAoB,GAAG,IAAI,CAIpG;AAED,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,oBAAoB,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAE1F;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,eAAe,EAAE,CAiB9E;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAkC3E"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
3
|
* Project instruction file detection and injection
|
|
4
|
-
* Handles AGENTS.md, CLAUDE.md, GEMINI.md detection
|
|
4
|
+
* Handles AGENTS.md, CLAUDE.md, GEMINI.md detection for prompt injection
|
|
5
5
|
* Per-project override state stored in .steroids/instruction-files.json
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
@@ -13,6 +13,7 @@ exports.getInstructionFilesList = getInstructionFilesList;
|
|
|
13
13
|
exports.buildProjectInstructionsSection = buildProjectInstructionsSection;
|
|
14
14
|
const node_fs_1 = require("node:fs");
|
|
15
15
|
const node_path_1 = require("node:path");
|
|
16
|
+
const path_links_js_1 = require("./path-links.js");
|
|
16
17
|
const OVERRIDE_FILE = '.steroids/instruction-files.json';
|
|
17
18
|
const MAX_CHARS = 4000;
|
|
18
19
|
exports.INSTRUCTION_FILE_DEFS = [
|
|
@@ -62,41 +63,38 @@ function getInstructionFilesList(projectPath) {
|
|
|
62
63
|
}
|
|
63
64
|
/**
|
|
64
65
|
* Build the mandatory project instructions section for injection into prompts.
|
|
65
|
-
*
|
|
66
|
+
* Lists enabled instruction file links (without inlining content).
|
|
66
67
|
* Returns empty string if no instruction files are found or enabled.
|
|
67
68
|
*/
|
|
68
69
|
function buildProjectInstructionsSection(projectPath) {
|
|
69
70
|
const overrides = readInstructionOverrides(projectPath);
|
|
70
|
-
const
|
|
71
|
+
const instructionLinks = [];
|
|
71
72
|
for (const { key, filename } of exports.INSTRUCTION_FILE_DEFS) {
|
|
72
73
|
if (!isInstructionEnabled(overrides, key))
|
|
73
74
|
continue;
|
|
74
75
|
const filePath = (0, node_path_1.join)(projectPath, filename);
|
|
75
76
|
if (!(0, node_fs_1.existsSync)(filePath))
|
|
76
77
|
continue;
|
|
77
|
-
|
|
78
|
-
let content = (0, node_fs_1.readFileSync)(filePath, 'utf-8').trim();
|
|
79
|
-
if (content.length > MAX_CHARS)
|
|
80
|
-
content = content.slice(0, MAX_CHARS) + '\n\n[truncated]';
|
|
81
|
-
parts.push(`### ${filename}\n${content}`);
|
|
82
|
-
}
|
|
83
|
-
catch {
|
|
84
|
-
// Skip unreadable files
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
if (overrides.customInstructions?.trim()) {
|
|
88
|
-
parts.push(`### Custom Instructions\n${overrides.customInstructions.trim()}`);
|
|
78
|
+
instructionLinks.push(`- \`${(0, path_links_js_1.formatPromptPath)(projectPath, filePath)}\``);
|
|
89
79
|
}
|
|
90
|
-
|
|
80
|
+
const customInstructions = overrides.customInstructions?.trim() ?? '';
|
|
81
|
+
if (instructionLinks.length === 0 && !customInstructions)
|
|
91
82
|
return '';
|
|
83
|
+
const customInstructionsSection = customInstructions
|
|
84
|
+
? `
|
|
85
|
+
### Custom Instructions
|
|
86
|
+
${customInstructions}
|
|
87
|
+
`
|
|
88
|
+
: '';
|
|
92
89
|
return `
|
|
93
90
|
---
|
|
94
91
|
|
|
95
|
-
##
|
|
92
|
+
## REQUIRED INSTRUCTION FILES
|
|
96
93
|
|
|
97
|
-
|
|
94
|
+
You MUST read and follow these files before writing code:
|
|
98
95
|
|
|
99
|
-
${
|
|
96
|
+
${instructionLinks.join('\n')}
|
|
97
|
+
${customInstructionsSection}
|
|
100
98
|
|
|
101
99
|
---
|
|
102
100
|
`;
|