@lumenflow/core 5.0.3 → 5.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/adapters/filesystem-metrics.adapter.d.ts.map +1 -1
- package/dist/adapters/filesystem-metrics.adapter.js +9 -4
- package/dist/adapters/filesystem-metrics.adapter.js.map +1 -1
- package/dist/adapters/terminal-renderer.adapter.d.ts.map +1 -1
- package/dist/adapters/terminal-renderer.adapter.js +3 -0
- package/dist/adapters/terminal-renderer.adapter.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/lumenflow-config-schema.d.ts +11 -1
- package/dist/lumenflow-config-schema.d.ts.map +1 -1
- package/dist/orchestration-advisory-loader.d.ts +1 -1
- package/dist/orchestration-advisory-loader.d.ts.map +1 -1
- package/dist/orchestration-advisory-loader.js +4 -35
- package/dist/orchestration-advisory-loader.js.map +1 -1
- package/dist/orchestration-advisory.d.ts +1 -2
- package/dist/orchestration-advisory.d.ts.map +1 -1
- package/dist/orchestration-advisory.js +3 -2
- package/dist/orchestration-advisory.js.map +1 -1
- package/dist/orchestration-rules.d.ts +7 -4
- package/dist/orchestration-rules.d.ts.map +1 -1
- package/dist/orchestration-rules.js +10 -9
- package/dist/orchestration-rules.js.map +1 -1
- package/dist/schemas/agents-config.d.ts +23 -0
- package/dist/schemas/agents-config.d.ts.map +1 -1
- package/dist/schemas/agents-config.js +99 -1
- package/dist/schemas/agents-config.js.map +1 -1
- package/dist/schemas/directories-config.js +2 -2
- package/dist/schemas/directories-config.js.map +1 -1
- package/dist/spawn-prompt-helpers.d.ts +3 -2
- package/dist/spawn-prompt-helpers.d.ts.map +1 -1
- package/dist/spawn-prompt-helpers.js +4 -24
- package/dist/spawn-prompt-helpers.js.map +1 -1
- package/dist/spawn-strategy.d.ts +7 -0
- package/dist/spawn-strategy.d.ts.map +1 -1
- package/dist/spawn-strategy.js +30 -10
- package/dist/spawn-strategy.js.map +1 -1
- package/dist/spawn-task-builder.d.ts.map +1 -1
- package/dist/spawn-task-builder.js +6 -5
- package/dist/spawn-task-builder.js.map +1 -1
- package/dist/usecases/get-suggestions.usecase.d.ts.map +1 -1
- package/dist/usecases/get-suggestions.usecase.js +4 -2
- package/dist/usecases/get-suggestions.usecase.js.map +1 -1
- package/dist/wu-constants.d.ts +1 -1
- package/dist/wu-constants.d.ts.map +1 -1
- package/dist/wu-constants.js +1 -1
- package/dist/wu-constants.js.map +1 -1
- package/dist/wu-context-constants.d.ts +4 -0
- package/dist/wu-context-constants.d.ts.map +1 -1
- package/dist/wu-context-constants.js +4 -0
- package/dist/wu-context-constants.js.map +1 -1
- package/dist/wu-done-messages.d.ts.map +1 -1
- package/dist/wu-done-messages.js +7 -4
- package/dist/wu-done-messages.js.map +1 -1
- package/dist/wu-done-preflight-checks.d.ts.map +1 -1
- package/dist/wu-done-preflight-checks.js +3 -2
- package/dist/wu-done-preflight-checks.js.map +1 -1
- package/dist/wu-done-rebase.d.ts.map +1 -1
- package/dist/wu-done-rebase.js +21 -2
- package/dist/wu-done-rebase.js.map +1 -1
- package/dist/wu-paths-constants.d.ts +8 -0
- package/dist/wu-paths-constants.d.ts.map +1 -1
- package/dist/wu-paths-constants.js +12 -0
- package/dist/wu-paths-constants.js.map +1 -1
- package/dist/wu-spawn-skills.d.ts.map +1 -1
- package/dist/wu-spawn-skills.js +8 -6
- package/dist/wu-spawn-skills.js.map +1 -1
- package/package.json +6 -6
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
* @see {@link https://lumenflow.dev/reference/agent-selection-guide/} - Agent selection rules
|
|
12
12
|
*/
|
|
13
13
|
import { minimatch } from 'minimatch';
|
|
14
|
-
import {
|
|
14
|
+
import { resolveMandatoryAgentNames, resolveMandatoryTriggers } from './schemas/agents-config.js';
|
|
15
15
|
/**
|
|
16
16
|
* Threshold for considering a WU "near completion".
|
|
17
17
|
* WUs with DoD progress >= this value trigger code-reviewer suggestion.
|
|
@@ -26,12 +26,13 @@ const NEAR_COMPLETION_THRESHOLD = 8;
|
|
|
26
26
|
* @param {readonly string[]} codePaths - Array of file paths being touched by the WU
|
|
27
27
|
* @returns {MandatoryAgentName[]} Array of unique mandatory agent names that should be invoked
|
|
28
28
|
*/
|
|
29
|
-
export function detectMandatoryAgents(codePaths) {
|
|
29
|
+
export function detectMandatoryAgents(codePaths, config) {
|
|
30
30
|
if (codePaths.length === 0) {
|
|
31
31
|
return [];
|
|
32
32
|
}
|
|
33
33
|
const triggeredAgents = new Set();
|
|
34
|
-
|
|
34
|
+
const mandatoryTriggers = resolveMandatoryTriggers(config);
|
|
35
|
+
for (const [agentName, patterns] of Object.entries(mandatoryTriggers)) {
|
|
35
36
|
const isTriggered = codePaths.some((filePath) => patterns.some((pattern) => minimatch(filePath, pattern)));
|
|
36
37
|
if (isTriggered) {
|
|
37
38
|
triggeredAgents.add(agentName);
|
|
@@ -46,14 +47,14 @@ export function detectMandatoryAgents(codePaths) {
|
|
|
46
47
|
* @param {object} _agentHistory - Record of agent metrics (reserved for future use)
|
|
47
48
|
* @returns {object[]} Array of prioritised suggestions
|
|
48
49
|
*/
|
|
49
|
-
export function generateSuggestions(wuProgress, _agentHistory = {}) {
|
|
50
|
+
export function generateSuggestions(wuProgress, _agentHistory = {}, config) {
|
|
50
51
|
if (wuProgress.length === 0) {
|
|
51
52
|
return [];
|
|
52
53
|
}
|
|
53
54
|
const suggestions = [];
|
|
54
55
|
let suggestionCounter = 0;
|
|
55
56
|
for (const wu of wuProgress) {
|
|
56
|
-
const wuSuggestions = generateWUSuggestions(wu, () => ++suggestionCounter);
|
|
57
|
+
const wuSuggestions = generateWUSuggestions(wu, () => ++suggestionCounter, config);
|
|
57
58
|
suggestions.push(...wuSuggestions);
|
|
58
59
|
}
|
|
59
60
|
// Sort by priority: high > medium > low
|
|
@@ -73,12 +74,12 @@ export function generateSuggestions(wuProgress, _agentHistory = {}) {
|
|
|
73
74
|
* @param {function} nextId - Function to generate unique suggestion IDs
|
|
74
75
|
* @returns {object[]} Array of suggestions for this WU
|
|
75
76
|
*/
|
|
76
|
-
function generateWUSuggestions(wu, nextId) {
|
|
77
|
+
function generateWUSuggestions(wu, nextId, config) {
|
|
77
78
|
const suggestions = [];
|
|
78
79
|
// Check for pending mandatory agents (HIGH priority)
|
|
79
80
|
// Note: For LumenFlow framework development, MANDATORY_TRIGGERS is empty.
|
|
80
81
|
// Projects using LumenFlow can configure their own mandatory agents.
|
|
81
|
-
const mandatoryAgentNames =
|
|
82
|
+
const mandatoryAgentNames = resolveMandatoryAgentNames(config);
|
|
82
83
|
for (const agentName of mandatoryAgentNames) {
|
|
83
84
|
if (wu.agents[agentName] === 'pending') {
|
|
84
85
|
suggestions.push({
|
|
@@ -184,8 +185,8 @@ export function buildMandatoryAgentsErrorMessage(wuId, missingAgents, codePaths)
|
|
|
184
185
|
* @param {{ blocking: boolean }} options - Options including blocking mode flag
|
|
185
186
|
* @returns {{ compliant: boolean, blocking: boolean, missing: string[], errorMessage?: string }}
|
|
186
187
|
*/
|
|
187
|
-
export function checkMandatoryAgentsComplianceBlocking(codePaths, wuId, options) {
|
|
188
|
-
const missingAgents = detectMandatoryAgents(codePaths);
|
|
188
|
+
export function checkMandatoryAgentsComplianceBlocking(codePaths, wuId, options, config) {
|
|
189
|
+
const missingAgents = detectMandatoryAgents(codePaths, config);
|
|
189
190
|
if (missingAgents.length === 0) {
|
|
190
191
|
return {
|
|
191
192
|
compliant: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"orchestration-rules.js","sourceRoot":"","sources":["../src/orchestration-rules.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;;;;GASG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"orchestration-rules.js","sourceRoot":"","sources":["../src/orchestration-rules.ts"],"names":[],"mappings":"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"}
|
|
@@ -144,6 +144,24 @@ export declare const MonitorQualitySignalsConfigSchema: z.ZodObject<{
|
|
|
144
144
|
grace_minutes: z.ZodDefault<z.ZodNumber>;
|
|
145
145
|
}, z.core.$strip>;
|
|
146
146
|
export type MonitorQualitySignalsConfig = z.infer<typeof MonitorQualitySignalsConfigSchema>;
|
|
147
|
+
export declare const MandatoryTriggersSchema: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>;
|
|
148
|
+
export declare const MandatoryAgentsConfigSchema: z.ZodObject<{
|
|
149
|
+
names: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
150
|
+
triggers: z.ZodDefault<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
|
|
151
|
+
}, z.core.$strip>;
|
|
152
|
+
export type MandatoryAgentsConfig = z.infer<typeof MandatoryAgentsConfigSchema>;
|
|
153
|
+
type AgentsConfigLike = {
|
|
154
|
+
agents?: {
|
|
155
|
+
roster?: unknown;
|
|
156
|
+
mandatory?: {
|
|
157
|
+
names?: unknown;
|
|
158
|
+
triggers?: unknown;
|
|
159
|
+
};
|
|
160
|
+
};
|
|
161
|
+
};
|
|
162
|
+
export declare function resolveAgentRoster(config?: AgentsConfigLike): string[];
|
|
163
|
+
export declare function resolveMandatoryAgentNames(config?: AgentsConfigLike): string[];
|
|
164
|
+
export declare function resolveMandatoryTriggers(config?: AgentsConfigLike): Record<string, string[]>;
|
|
147
165
|
/**
|
|
148
166
|
* Agents configuration
|
|
149
167
|
*/
|
|
@@ -176,6 +194,11 @@ export declare const AgentsConfigSchema: z.ZodObject<{
|
|
|
176
194
|
}, z.core.$strict>>;
|
|
177
195
|
}, z.core.$loose>>;
|
|
178
196
|
}, z.core.$strip>>>;
|
|
197
|
+
roster: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
198
|
+
mandatory: z.ZodDefault<z.ZodObject<{
|
|
199
|
+
names: z.ZodDefault<z.ZodArray<z.ZodString>>;
|
|
200
|
+
triggers: z.ZodDefault<z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString>>>>;
|
|
201
|
+
}, z.core.$strip>>;
|
|
179
202
|
methodology: z.ZodDefault<z.ZodObject<{
|
|
180
203
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
181
204
|
enforcement: z.ZodDefault<z.ZodEnum<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents-config.d.ts","sourceRoot":"","sources":["../../src/schemas/agents-config.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,iCAAiC,EACjC,KAAK,2BAA2B,EACjC,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"agents-config.d.ts","sourceRoot":"","sources":["../../src/schemas/agents-config.ts"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,iCAAiC,EACjC,KAAK,2BAA2B,EACjC,MAAM,gCAAgC,CAAC;AAiBxC;;GAEG;AACH,eAAO,MAAM,8BAA8B,UAQ1C,CAAC;AAEF,eAAO,MAAM,yBAAyB;;;;;;;;iBAYpC,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;iBAM5B,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;iBAgB7B,CAAC;AAEH;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,uBAAuB;;;;;iBA4BlC,CAAC;AAEH,6DAA6D;AAC7D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;iBAIjB,CAAC;AAEjB,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,OAAO,EAAE,iCAAiC,EAAE,CAAC;AAC7C,YAAY,EAAE,2BAA2B,EAAE,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0C7B,CAAC;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,0BAA0B;;;iBAcrC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;;;;;;;;;;;;;;;GAgBG;AACH,eAAO,MAAM,iCAAiC;;;;iBAO5C,CAAC;AAEH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAmB5F,eAAO,MAAM,uBAAuB,iEAEa,CAAC;AAElD,eAAO,MAAM,2BAA2B;;;iBAGtC,CAAC;AAEH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,KAAK,gBAAgB,GAAG;IACtB,MAAM,CAAC,EAAE;QACP,MAAM,CAAC,EAAE,OAAO,CAAC;QACjB,SAAS,CAAC,EAAE;YACV,KAAK,CAAC,EAAE,OAAO,CAAC;YAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;SACpB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,MAAM,EAAE,CAMtE;AAED,wBAAgB,0BAA0B,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,MAAM,EAAE,CAO9E;AAED,wBAAgB,wBAAwB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CA6B5F;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqD3B,CAAC;AAEL,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAC5E,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAC5D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAC9D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}
|
|
@@ -11,6 +11,19 @@
|
|
|
11
11
|
import { z } from 'zod';
|
|
12
12
|
import { LUMENFLOW_CLIENT_IDS } from '../client-ids.js';
|
|
13
13
|
import { DeliveryReviewClientFeatureSchema, } from '../delivery-review-contract.js';
|
|
14
|
+
// Keep these defaults aligned with the software-delivery pack orchestration defaults.
|
|
15
|
+
// config-parity.test.ts guards against cross-package drift.
|
|
16
|
+
const DEFAULT_AGENT_ROSTER = [
|
|
17
|
+
'general-purpose',
|
|
18
|
+
'lumenflow-pm',
|
|
19
|
+
'test-engineer',
|
|
20
|
+
'code-reviewer',
|
|
21
|
+
'bug-triage',
|
|
22
|
+
'lumenflow-enforcer',
|
|
23
|
+
'initiative-architect',
|
|
24
|
+
];
|
|
25
|
+
const DEFAULT_MANDATORY_AGENT_NAMES = [];
|
|
26
|
+
const DEFAULT_MANDATORY_TRIGGERS = {};
|
|
14
27
|
/**
|
|
15
28
|
* Methodology defaults (agent-facing project defaults)
|
|
16
29
|
*/
|
|
@@ -203,14 +216,77 @@ export const MonitorQualitySignalsConfigSchema = z.object({
|
|
|
203
216
|
/** Grace window in minutes after claim before warnings fire. Default: 15. */
|
|
204
217
|
grace_minutes: z.number().int().nonnegative().default(15),
|
|
205
218
|
});
|
|
219
|
+
function cloneMandatoryTriggerDefaults() {
|
|
220
|
+
return Object.fromEntries(Object.entries(DEFAULT_MANDATORY_TRIGGERS).map(([agentName, patterns]) => [
|
|
221
|
+
agentName,
|
|
222
|
+
[...patterns],
|
|
223
|
+
]));
|
|
224
|
+
}
|
|
225
|
+
function isStringArray(value) {
|
|
226
|
+
return Array.isArray(value) && value.every((item) => typeof item === 'string');
|
|
227
|
+
}
|
|
228
|
+
function uniqueStrings(values) {
|
|
229
|
+
return Array.from(new Set(values));
|
|
230
|
+
}
|
|
231
|
+
export const MandatoryTriggersSchema = z
|
|
232
|
+
.record(z.string(), z.array(z.string()))
|
|
233
|
+
.default(() => cloneMandatoryTriggerDefaults());
|
|
234
|
+
export const MandatoryAgentsConfigSchema = z.object({
|
|
235
|
+
names: z.array(z.string()).default([...DEFAULT_MANDATORY_AGENT_NAMES]),
|
|
236
|
+
triggers: MandatoryTriggersSchema.default(() => cloneMandatoryTriggerDefaults()),
|
|
237
|
+
});
|
|
238
|
+
export function resolveAgentRoster(config) {
|
|
239
|
+
const roster = config?.agents?.roster;
|
|
240
|
+
if (!isStringArray(roster) || roster.length === 0) {
|
|
241
|
+
return [...DEFAULT_AGENT_ROSTER];
|
|
242
|
+
}
|
|
243
|
+
return uniqueStrings(roster);
|
|
244
|
+
}
|
|
245
|
+
export function resolveMandatoryAgentNames(config) {
|
|
246
|
+
const roster = resolveAgentRoster(config);
|
|
247
|
+
const configuredNames = config?.agents?.mandatory?.names;
|
|
248
|
+
const names = isStringArray(configuredNames)
|
|
249
|
+
? uniqueStrings(configuredNames)
|
|
250
|
+
: [...DEFAULT_MANDATORY_AGENT_NAMES];
|
|
251
|
+
return names.filter((name) => roster.includes(name));
|
|
252
|
+
}
|
|
253
|
+
export function resolveMandatoryTriggers(config) {
|
|
254
|
+
const mandatoryNames = new Set(resolveMandatoryAgentNames(config));
|
|
255
|
+
const configuredTriggers = config?.agents?.mandatory?.triggers;
|
|
256
|
+
const fallbackTriggers = Object.fromEntries(Object.entries(cloneMandatoryTriggerDefaults()).filter(([agentName]) => mandatoryNames.has(agentName)));
|
|
257
|
+
if (!configuredTriggers ||
|
|
258
|
+
typeof configuredTriggers !== 'object' ||
|
|
259
|
+
Array.isArray(configuredTriggers)) {
|
|
260
|
+
return fallbackTriggers;
|
|
261
|
+
}
|
|
262
|
+
const resolved = {};
|
|
263
|
+
for (const [agentName, patterns] of Object.entries(configuredTriggers)) {
|
|
264
|
+
if (!mandatoryNames.has(agentName) || !isStringArray(patterns)) {
|
|
265
|
+
continue;
|
|
266
|
+
}
|
|
267
|
+
resolved[agentName] = [...patterns];
|
|
268
|
+
}
|
|
269
|
+
return {
|
|
270
|
+
...fallbackTriggers,
|
|
271
|
+
...resolved,
|
|
272
|
+
};
|
|
273
|
+
}
|
|
206
274
|
/**
|
|
207
275
|
* Agents configuration
|
|
208
276
|
*/
|
|
209
|
-
export const AgentsConfigSchema = z
|
|
277
|
+
export const AgentsConfigSchema = z
|
|
278
|
+
.object({
|
|
210
279
|
/** Default client to use if not specified (configure per project; bootstrap default: 'claude-code') */
|
|
211
280
|
defaultClient: z.string().default(LUMENFLOW_CLIENT_IDS.CLAUDE_CODE),
|
|
212
281
|
/** Client-specific configurations */
|
|
213
282
|
clients: z.record(z.string(), ClientConfigSchema).default({}),
|
|
283
|
+
/** Recommended default roster for orchestration-aware agents */
|
|
284
|
+
roster: z
|
|
285
|
+
.array(z.string())
|
|
286
|
+
.min(1)
|
|
287
|
+
.default([...DEFAULT_AGENT_ROSTER]),
|
|
288
|
+
/** Mandatory agents and their trigger patterns */
|
|
289
|
+
mandatory: MandatoryAgentsConfigSchema.default(() => MandatoryAgentsConfigSchema.parse({})),
|
|
214
290
|
/** Project methodology defaults (agent-facing) */
|
|
215
291
|
methodology: MethodologyDefaultsSchema.default(() => MethodologyDefaultsSchema.parse({})),
|
|
216
292
|
/**
|
|
@@ -222,5 +298,27 @@ export const AgentsConfigSchema = z.object({
|
|
|
222
298
|
stream_watchdog: StreamWatchdogConfigSchema.optional(),
|
|
223
299
|
/** WU-2667: Mid-execution quality signal policy. */
|
|
224
300
|
monitor_quality_signals: MonitorQualitySignalsConfigSchema.optional(),
|
|
301
|
+
})
|
|
302
|
+
.superRefine((value, ctx) => {
|
|
303
|
+
const roster = new Set(value.roster);
|
|
304
|
+
for (const agentName of value.mandatory.names) {
|
|
305
|
+
if (!roster.has(agentName)) {
|
|
306
|
+
ctx.addIssue({
|
|
307
|
+
code: z.ZodIssueCode.custom,
|
|
308
|
+
path: ['mandatory', 'names'],
|
|
309
|
+
message: `Mandatory agent "${agentName}" must be present in agents.roster`,
|
|
310
|
+
});
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
const mandatoryNames = new Set(value.mandatory.names);
|
|
314
|
+
for (const agentName of Object.keys(value.mandatory.triggers)) {
|
|
315
|
+
if (!mandatoryNames.has(agentName)) {
|
|
316
|
+
ctx.addIssue({
|
|
317
|
+
code: z.ZodIssueCode.custom,
|
|
318
|
+
path: ['mandatory', 'triggers', agentName],
|
|
319
|
+
message: `Mandatory trigger "${agentName}" must also appear in agents.mandatory.names`,
|
|
320
|
+
});
|
|
321
|
+
}
|
|
322
|
+
}
|
|
225
323
|
});
|
|
226
324
|
//# sourceMappingURL=agents-config.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents-config.js","sourceRoot":"","sources":["../../src/schemas/agents-config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"agents-config.js","sourceRoot":"","sources":["../../src/schemas/agents-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -59,8 +59,8 @@ export const DirectoriesSchema = z.object({
|
|
|
59
59
|
backlogPath: z.string().default(`${DEFAULT_LAYOUT.tasks}/backlog.md`),
|
|
60
60
|
/** Status file path (default: docs-layout simple preset + '/status.md') */
|
|
61
61
|
statusPath: z.string().default(`${DEFAULT_LAYOUT.tasks}/status.md`),
|
|
62
|
-
/** Skills directory (default: '.
|
|
63
|
-
skillsDir: z.string().default('.
|
|
62
|
+
/** Skills directory (default: '.lumenflow/skills') */
|
|
63
|
+
skillsDir: z.string().default('.lumenflow/skills'),
|
|
64
64
|
/** Agents directory (default: '.claude/agents') */
|
|
65
65
|
agentsDir: z.string().default('.claude/agents'),
|
|
66
66
|
/** Architecture decisions directory (default: docs-layout simple preset adrDir) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directories-config.js","sourceRoot":"","sources":["../../src/schemas/directories-config.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;GAMG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAM,CAAC;AAElD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD;;;;OAIG;IACH,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC,WAAW,CAAC;IAE1E;;;;OAIG;IACH,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;CACxC,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,4FAA4F;IAC5F,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;IAE/B,kDAAkD;IAClD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC;IAE3C,2CAA2C;IAC3C,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IAE7B,2DAA2D;IAC3D,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;IAEtC,4CAA4C;IAC5C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC;IAEjC,gDAAgD;IAChD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,WAAW,CAAC;IAEzC,0CAA0C;IAC1C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC;IAEnC,sDAAsD;IACtD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC;IAE9C,2EAA2E;IAC3E,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,KAAK,KAAK,CAAC;IAEvD,kFAAkF;IAClF,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,KAAK,cAAc,CAAC;IAEzE,6EAA6E;IAC7E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,KAAK,aAAa,CAAC;IAErE,2EAA2E;IAC3E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC,KAAK,YAAY,CAAC;IAEnE,
|
|
1
|
+
{"version":3,"file":"directories-config.js","sourceRoot":"","sources":["../../src/schemas/directories-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
import type { ClientConfig } from './lumenflow-config-schema.js';
|
|
3
3
|
import type { SpawnStrategy } from './spawn-strategy.js';
|
|
4
4
|
import type { WUDoc } from './spawn-agent-guidance.js';
|
|
5
|
+
import { detectMandatoryAgents as detectMandatoryAgentsFromConfig } from './orchestration-rules.js';
|
|
5
6
|
/**
|
|
6
7
|
* Client context for spawn generation
|
|
7
8
|
*/
|
|
@@ -21,9 +22,9 @@ export declare function formatAcceptance(acceptance: string[] | undefined): stri
|
|
|
21
22
|
*/
|
|
22
23
|
export declare function generateImplementationContext(doc: WUDoc): string;
|
|
23
24
|
/**
|
|
24
|
-
* Detect mandatory agents based on
|
|
25
|
+
* Detect mandatory agents based on resolved workspace config.
|
|
25
26
|
*/
|
|
26
|
-
export declare function detectMandatoryAgents(codePaths: string[] | undefined): string[];
|
|
27
|
+
export declare function detectMandatoryAgents(codePaths: string[] | undefined, config?: Parameters<typeof detectMandatoryAgentsFromConfig>[1]): string[];
|
|
27
28
|
/**
|
|
28
29
|
* Generate the mandatory agents section
|
|
29
30
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spawn-prompt-helpers.d.ts","sourceRoot":"","sources":["../src/spawn-prompt-helpers.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"spawn-prompt-helpers.d.ts","sourceRoot":"","sources":["../src/spawn-prompt-helpers.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAGvD,OAAO,EAAE,qBAAqB,IAAI,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AAmBpG;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB;AAMD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM,CAKzE;AAoDD;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,KAAK,GAAG,MAAM,CA2BhE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EAAE,GAAG,SAAS,EAC/B,MAAM,CAAC,EAAE,UAAU,CAAC,OAAO,+BAA+B,CAAC,CAAC,CAAC,CAAC,GAC7D,MAAM,EAAE,CAEV;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAe5F;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,GAAG,MAAM,CAE5E;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,aAAa,EAAE,aAAa,GAAG,SAAS,GAAG,MAAM,CAM5F;AA2FD;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,CAqC7E"}
|
|
@@ -20,17 +20,7 @@ import path from 'node:path';
|
|
|
20
20
|
import { existsSync } from 'node:fs';
|
|
21
21
|
import { minimatch } from 'minimatch';
|
|
22
22
|
import { loadInvariants, INVARIANT_TYPES } from './invariants-runner.js';
|
|
23
|
-
|
|
24
|
-
* Mandatory agent trigger patterns.
|
|
25
|
-
* Mirrors MANDATORY_TRIGGERS from orchestration.constants.ts.
|
|
26
|
-
*
|
|
27
|
-
* Note: For LumenFlow framework development, this is empty since we don't have
|
|
28
|
-
* application-specific concerns. Projects using LumenFlow
|
|
29
|
-
* should configure their own triggers based on their domain requirements.
|
|
30
|
-
*/
|
|
31
|
-
const MANDATORY_TRIGGERS = {
|
|
32
|
-
// No mandatory triggers for LumenFlow framework development.
|
|
33
|
-
};
|
|
23
|
+
import { detectMandatoryAgents as detectMandatoryAgentsFromConfig } from './orchestration-rules.js';
|
|
34
24
|
// ============================================================================
|
|
35
25
|
// Formatting Functions
|
|
36
26
|
// ============================================================================
|
|
@@ -114,20 +104,10 @@ export function generateImplementationContext(doc) {
|
|
|
114
104
|
return sections.join('\n\n---\n\n');
|
|
115
105
|
}
|
|
116
106
|
/**
|
|
117
|
-
* Detect mandatory agents based on
|
|
107
|
+
* Detect mandatory agents based on resolved workspace config.
|
|
118
108
|
*/
|
|
119
|
-
export function detectMandatoryAgents(codePaths) {
|
|
120
|
-
|
|
121
|
-
return [];
|
|
122
|
-
}
|
|
123
|
-
const triggeredAgents = new Set();
|
|
124
|
-
for (const [agentName, patterns] of Object.entries(MANDATORY_TRIGGERS)) {
|
|
125
|
-
const isTriggered = codePaths.some((filePath) => patterns.some((pattern) => minimatch(filePath, pattern)));
|
|
126
|
-
if (isTriggered) {
|
|
127
|
-
triggeredAgents.add(agentName);
|
|
128
|
-
}
|
|
129
|
-
}
|
|
130
|
-
return Array.from(triggeredAgents);
|
|
109
|
+
export function detectMandatoryAgents(codePaths, config) {
|
|
110
|
+
return detectMandatoryAgentsFromConfig(codePaths ?? [], config);
|
|
131
111
|
}
|
|
132
112
|
/**
|
|
133
113
|
* Generate the mandatory agents section
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spawn-prompt-helpers.js","sourceRoot":"","sources":["../src/spawn-prompt-helpers.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAIrC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"spawn-prompt-helpers.js","sourceRoot":"","sources":["../src/spawn-prompt-helpers.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAIrC,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,EAAE,qBAAqB,IAAI,+BAA+B,EAAE,MAAM,0BAA0B,CAAC;AA2BpG,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,UAAgC;IAC/D,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,kCAAkC,CAAC;IAC5C,CAAC;IACD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,QAA8B;IACpD,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,aAAa,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE;QACzC,IACE,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC;YAC9B,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC;YACpB,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC;YACjC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC,EACnD,CAAC;YACD,OAAO,KAAK,GAAG,2CAA2C,CAAC;QAC7D,CAAC;QACD,OAAO,KAAK,GAAG,EAAE,CAAC;IACpB,CAAC,CAAC,CAAC;IAEH,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,SAAS,WAAW,CAAC,KAA2B;IAC9C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACrD,CAAC;AAED;;GAEG;AACH,SAAS,iBAAiB,CAAC,WAAiC;IAC1D,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7C,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC/D,CAAC;AAED,+EAA+E;AAC/E,iCAAiC;AACjC,+EAA+E;AAE/E;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,GAAU;IACtD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAE9B,MAAM,IAAI,GAAG,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAC3C,IAAI,IAAI,EAAE,CAAC;QACT,QAAQ,CAAC,IAAI,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAClC,QAAQ,CAAC,IAAI,CAAC,8BAA8B,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACrC,IAAI,KAAK,EAAE,CAAC;QACV,QAAQ,CAAC,IAAI,CAAC,eAAe,KAAK,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,MAAM,WAAW,GAAG,iBAAiB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IACzD,IAAI,WAAW,EAAE,CAAC;QAChB,QAAQ,CAAC,IAAI,CAAC,6BAA6B,WAAW,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CACnC,SAA+B,EAC/B,MAA8D;IAE9D,OAAO,+BAA+B,CAAC,SAAS,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;AAClE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,6BAA6B,CAAC,eAAyB,EAAE,GAAW;IAClF,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC5E,OAAO;;;;;EAKP,SAAS;;;CAGV,CAAC;AACF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAAU,EAAE,QAAuB;IAClE,OAAO,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;AAClC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CAAC,aAAwC;IAClF,IAAI,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;QAAE,OAAO,EAAE,CAAC;IACtD,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM;SACvC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,KAAK,CAAC,KAAK,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;SACxD,IAAI,CAAC,MAAM,CAAC,CAAC;IAChB,OAAO,uBAAuB,aAAa,CAAC,IAAI,QAAQ,MAAM,EAAE,CAAC;AACnE,CAAC;AAED,+EAA+E;AAC/E,oCAAoC;AACpC,+EAA+E;AAE/E;;GAEG;AACH,SAAS,wBAAwB,CAAC,SAA8B,EAAE,SAAmB;IACnF,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;QACvB,KAAK,eAAe,CAAC,cAAc,CAAC;QACpC,KAAK,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC;YACnC,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC;YACrC,IAAI,CAAC,aAAa;gBAAE,OAAO,KAAK,CAAC;YACjC,OAAO,SAAS,CAAC,IAAI,CACnB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,aAAa,IAAI,SAAS,CAAC,CAAC,EAAE,aAAa,CAAC,IAAI,SAAS,CAAC,aAAa,EAAE,CAAC,CAAC,CACzF,CAAC;QACJ,CAAC;QAED,KAAK,eAAe,CAAC,kBAAkB,CAAC,CAAC,CAAC;YACxC,MAAM,cAAc,GAAG,SAAS,CAAC,KAAK,IAAI,EAAE,CAAC;YAC7C,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1B,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,IAAI,SAAS,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CACzE,CAAC;QACJ,CAAC;QAED,KAAK,eAAe,CAAC,iBAAiB,CAAC;QACvC,KAAK,eAAe,CAAC,gBAAgB;YACnC,OAAO,CACL,SAAS,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CACrC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC,CAClD,IAAI,KAAK,CACX,CAAC;QAEJ,KAAK,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAAC;YACtC,MAAM,WAAW,GAAG,SAAS,CAAC,IAAI,CAAC;YACnC,IAAI,CAAC,WAAW;gBAAE,OAAO,KAAK,CAAC;YAC/B,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;QAC1D,CAAC;QAED;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,SAAS,wBAAwB,CAAC,GAAwB;IACxD,MAAM,KAAK,GAAG,CAAC,OAAO,GAAG,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAEvE,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACb,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QACd,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,cAAc,cAAc,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;QACb,KAAK,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,GAAG,CAAC,aAAa,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QAC1D,MAAM,gBAAgB,GAAG,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7E,KAAK,CAAC,IAAI,CAAC,sBAAsB,gBAAgB,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,IACE,GAAG,CAAC,OAAO;QACX,CAAC,GAAG,CAAC,IAAI,KAAK,eAAe,CAAC,gBAAgB;YAC5C,GAAG,CAAC,IAAI,KAAK,eAAe,CAAC,iBAAiB,CAAC,EACjD,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,kBAAkB,GAAG,CAAC,OAAO,IAAI,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;QAC1C,MAAM,cAAc,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnE,KAAK,CAAC,IAAI,CAAC,cAAc,cAAc,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iCAAiC,CAAC,SAAmB;IACnE,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAC5D,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,UAAiC,CAAC;IACtC,IAAI,CAAC;QACH,UAAU,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,CAAC,UAAU,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC3C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,wBAAwB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC;IAEhG,IAAI,kBAAkB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,KAAK,GAAG;QACZ,mCAAmC;QACnC,EAAE;QACF,gEAAgE;QAChE,EAAE;QACF,GAAG,kBAAkB,CAAC,OAAO,CAAC,wBAAwB,CAAC;QACvD,gGAAgG;KACjG,CAAC;IAEF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
package/dist/spawn-strategy.d.ts
CHANGED
|
@@ -31,6 +31,13 @@ export declare class ClaudeCodeStrategy extends BaseSpawnStrategy {
|
|
|
31
31
|
getPreamble(wuId: string): string;
|
|
32
32
|
getSkillLoadingInstruction(): string;
|
|
33
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* Strategy for Codex CLI
|
|
36
|
+
*/
|
|
37
|
+
export declare class CodexStrategy extends BaseSpawnStrategy {
|
|
38
|
+
getPreamble(wuId: string): string;
|
|
39
|
+
getSkillLoadingInstruction(): string;
|
|
40
|
+
}
|
|
34
41
|
/**
|
|
35
42
|
* Strategy for Gemini CLI (Multimodal/Ecosystem)
|
|
36
43
|
* Uses default getSkillLoadingInstruction from base class
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spawn-strategy.d.ts","sourceRoot":"","sources":["../src/spawn-strategy.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAElC;;OAEG;IACH,0BAA0B,IAAI,MAAM,CAAC;CACtC;AAED;;GAEG;AACH,uBAAe,iBAAkB,YAAW,aAAa;IACvD,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAc/C,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAE1C;;;OAGG;IACH,0BAA0B,IAAI,MAAM;CAMrC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,iBAAiB;IACvD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAmBjC,0BAA0B,IAAI,MAAM;CAQrC;AAED;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,iBAAiB;IACtD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CASlC;AAED;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,iBAAiB;IACpD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CAGlC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,
|
|
1
|
+
{"version":3,"file":"spawn-strategy.d.ts","sourceRoot":"","sources":["../src/spawn-strategy.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAElC;;OAEG;IACH,0BAA0B,IAAI,MAAM,CAAC;CACtC;AAED;;GAEG;AACH,uBAAe,iBAAkB,YAAW,aAAa;IACvD,SAAS,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAc/C,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAE1C;;;OAGG;IACH,0BAA0B,IAAI,MAAM;CAMrC;AAED;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,iBAAiB;IACvD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAmBjC,0BAA0B,IAAI,MAAM;CAQrC;AAED;;GAEG;AACH,qBAAa,aAAc,SAAQ,iBAAiB;IAClD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAajC,0BAA0B,IAAI,MAAM;CAiBrC;AAED;;;GAGG;AACH,qBAAa,iBAAkB,SAAQ,iBAAiB;IACtD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CASlC;AAED;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,iBAAiB;IACpD,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CAGlC;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,aAAa,CAmBrE;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;CAEhC,CAAC"}
|
package/dist/spawn-strategy.js
CHANGED
|
@@ -28,7 +28,7 @@ class BaseSpawnStrategy {
|
|
|
28
28
|
getSkillLoadingInstruction() {
|
|
29
29
|
return `## Skills Selection
|
|
30
30
|
|
|
31
|
-
1. Check \`.lumenflow/
|
|
31
|
+
1. Check \`.lumenflow/skills\` for available skills.
|
|
32
32
|
2. Select relevant skills for this task.`;
|
|
33
33
|
}
|
|
34
34
|
}
|
|
@@ -56,11 +56,38 @@ export class ClaudeCodeStrategy extends BaseSpawnStrategy {
|
|
|
56
56
|
const agentsDir = getConfig().directories.agentsDir;
|
|
57
57
|
return `## Skills Selection
|
|
58
58
|
|
|
59
|
-
1. Check \`.lumenflow/
|
|
59
|
+
1. Check \`.lumenflow/skills\` for available skills.
|
|
60
60
|
2. Check \`${agentsDir}\` for Claude-specific overrides or additions.
|
|
61
61
|
3. Select relevant skills for this task.`;
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Strategy for Codex CLI
|
|
66
|
+
*/
|
|
67
|
+
export class CodexStrategy extends BaseSpawnStrategy {
|
|
68
|
+
getPreamble(wuId) {
|
|
69
|
+
const config = getConfig();
|
|
70
|
+
const codexAgentsDir = config.agents.clients['codex-cli']?.agentsDir ??
|
|
71
|
+
config.agents.clients.codex?.agentsDir ??
|
|
72
|
+
'.codex/agents';
|
|
73
|
+
return (this.getCorePreamble(wuId) +
|
|
74
|
+
`\n6. Inspect ${codexAgentsDir}/ for Codex subagent inventory before delegating; Codex subagent invocation is explicit-only.`);
|
|
75
|
+
}
|
|
76
|
+
getSkillLoadingInstruction() {
|
|
77
|
+
const config = getConfig();
|
|
78
|
+
const codexSkillsDir = config.agents.clients['codex-cli']?.skillsDir ??
|
|
79
|
+
config.agents.clients.codex?.skillsDir ??
|
|
80
|
+
'.agents/skills';
|
|
81
|
+
const codexAgentsDir = config.agents.clients['codex-cli']?.agentsDir ??
|
|
82
|
+
config.agents.clients.codex?.agentsDir ??
|
|
83
|
+
'.codex/agents';
|
|
84
|
+
return `## Skills Selection
|
|
85
|
+
|
|
86
|
+
1. Check \`${codexSkillsDir}\` for shared cross-vendor skills.
|
|
87
|
+
2. Check \`${codexAgentsDir}\` for Codex-specific subagent overlays.
|
|
88
|
+
3. Delegate to Codex subagents explicitly when needed; do not rely on auto-match by description.`;
|
|
89
|
+
}
|
|
90
|
+
}
|
|
64
91
|
/**
|
|
65
92
|
* Strategy for Gemini CLI (Multimodal/Ecosystem)
|
|
66
93
|
* Uses default getSkillLoadingInstruction from base class
|
|
@@ -97,14 +124,7 @@ export function createSpawnStrategy(clientName) {
|
|
|
97
124
|
return new GeminiCliStrategy();
|
|
98
125
|
case 'codex': // Deprecated alias
|
|
99
126
|
case 'codex-cli':
|
|
100
|
-
|
|
101
|
-
// Plan says: "codex: preamble: false, strategy: cloud-sandbox" -> implies Generic or dedicated.
|
|
102
|
-
// For now, let's map to Generic but maybe we should add CodexStrategy if it has diff behavior.
|
|
103
|
-
// Re-reading plan: "CodexStrategy: Emphasizes cloud sandbox constraints"
|
|
104
|
-
// But for this "Minimal" pass, let's stick to Generic with a comment,
|
|
105
|
-
// OR essentially treat it as Generic since we don't have constraints logic here yet (it's in wu-spawn).
|
|
106
|
-
// Actually, let's return GenericStrategy but we might handle constraints elsewhere.
|
|
107
|
-
return new GenericStrategy();
|
|
127
|
+
return new CodexStrategy();
|
|
108
128
|
default:
|
|
109
129
|
// Warn? The factory just creates. The caller should warn if it fell back.
|
|
110
130
|
// But here we just return Generic.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spawn-strategy.js","sourceRoot":"","sources":["../src/spawn-strategy.ts"],"names":[],"mappings":"AAAA,iCAAiC;AACjC,yCAAyC;AAEzC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAiB9C;;GAEG;AACH,MAAe,iBAAiB;IACpB,eAAe,CAAC,IAAY;QACpC,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;QAChC,4EAA4E;QAC5E,4EAA4E;QAC5E,0EAA0E;QAC1E,OAAO;;;;;UAKD,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC;UAChB,OAAO,CAAC,cAAc,EAAE,+CAA+C,CAAC;IAChF,CAAC;IAID;;;OAGG;IACH,0BAA0B;QACxB,OAAO;;;yCAG8B,CAAC;IACxC,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,kBAAmB,SAAQ,iBAAiB;IACvD,WAAW,CAAC,IAAY;QACtB,IAAI,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC,WAAW,CAAC,MAAM,CAAC;QACjD,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAE5D,iBAAiB;QACjB,IAAI,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAClC,gEAAgE;YAChE,6EAA6E;YAC7E,8DAA8D;YAC9D,0DAA0D;YAC1D,0CAA0C;YAC1C,wCAAwC;YACxC,QAAQ,IAAI,aAAa,iBAAiB,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,qCAAqC,CAAC;QACtG,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,0BAA0B;QACxB,MAAM,SAAS,GAAG,SAAS,EAAE,CAAC,WAAW,CAAC,SAAS,CAAC;QACpD,OAAO;;;aAGE,SAAS;yCACmB,CAAC;IACxC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,iBAAkB,SAAQ,iBAAiB;IACtD,WAAW,CAAC,IAAY;QACtB,IAAI,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAE1C,IAAI,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAC5B,QAAQ,IAAI,wDAAwD,CAAC;QACvE,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,OAAO,eAAgB,SAAQ,iBAAiB;IACpD,WAAW,CAAC,IAAY;QACtB,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;CACF;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAkB;IACpD,QAAQ,UAAU,CAAC,WAAW,EAAE,EAAE,CAAC;QACjC,KAAK,QAAQ,CAAC,CAAC,eAAe;QAC9B,KAAK,aAAa;YAChB,OAAO,IAAI,kBAAkB,EAAE,CAAC;QAElC,KAAK,QAAQ,CAAC,CAAC,QAAQ;QACvB,KAAK,YAAY;YACf,OAAO,IAAI,iBAAiB,EAAE,CAAC;QAEjC,KAAK,OAAO,CAAC,CAAC,mBAAmB;QACjC,KAAK,WAAW;YACd,
|
|
1
|
+
{"version":3,"file":"spawn-strategy.js","sourceRoot":"","sources":["../src/spawn-strategy.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spawn-task-builder.d.ts","sourceRoot":"","sources":["../src/spawn-task-builder.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAe/E,OAAO,EACL,KAAK,KAAK,EAaX,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,KAAK,aAAa,
|
|
1
|
+
{"version":3,"file":"spawn-task-builder.d.ts","sourceRoot":"","sources":["../src/spawn-task-builder.ts"],"names":[],"mappings":"AAoBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAe/E,OAAO,EACL,KAAK,KAAK,EAaX,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,KAAK,aAAa,EAOnB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAiB,KAAK,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAOlE;;GAEG;AACH,UAAU,4BAA4B;IACpC,2CAA2C;IAC3C,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAOD,KAAK,aAAa,GAAG,KAAK,GAAG,UAAU,CAAC;AAuBxC;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,aAAa,CAAC;IACvB,MAAM,CAAC,EAAE,eAAe,CAAC;IACzB,yDAAyD;IACzD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mFAAmF;IACnF,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,wEAAwE;IACxE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,6EAA6E;IAC7E,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,yBAAyB;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,KAAK,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,aAAa,CAAC;IACxB,MAAM,EAAE,eAAe,CAAC;CACzB;AAED,MAAM,MAAM,qBAAqB,GAAG,CAAC,IAAI,EAAE,yBAAyB,KAAK,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAEnG,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,aAAa,CAAC;CACvB;AAgBD,wBAAgB,8BAA8B,CAAC,QAAQ,CAAC,EAAE,qBAAqB,GAAG,MAAM,IAAI,CAM3F;AAED,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,KAAK,EACV,EAAE,EAAE,MAAM,EACV,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,GAAE,YAAiB,GACzB,sBAAsB,CA2CxB;AAMD;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,KAAK,EACV,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,YAAiB,GACzB,MAAM,CAoOR;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,KAAK,EACV,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,aAAa,EACvB,OAAO,GAAE,YAAiB,GACzB,MAAM,CAkJR;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CAMrE;AAED;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAC3C,YAAY,EAAE,YAAY,EAC1B,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,4BAAiC,GACzC,MAAM,CAiBR"}
|
|
@@ -26,8 +26,9 @@ import { TRUNCATION_WARNING_BANNER } from './spawn-template-assembler.js';
|
|
|
26
26
|
import { generatePolicyBasedTestGuidance, generateDesignContextSection, generateMandatoryStandards, generateEnforcementSummary, generateCodeCraftGuidance, generateReadBeforeWriteDiscipline, generateSelfReviewDirective, } from './spawn-guidance-generators.js';
|
|
27
27
|
import { generateConstraints, generateCodexConstraints } from './spawn-constraints-generator.js';
|
|
28
28
|
import { generateEffortScalingRules, generateParallelToolCallGuidance, generateIterativeSearchHeuristics, generateTokenBudgetAwareness, generateCompletionFormat, generateAgentCoordinationSection, generateQuickFixCommands, generateLaneSelectionSection, generateWorktreePathGuidance, generateBugDiscoverySection, generateLaneGuidance, generateActionSection, } from './spawn-agent-guidance.js';
|
|
29
|
-
import { formatAcceptance, generateImplementationContext,
|
|
29
|
+
import { formatAcceptance, generateImplementationContext, generateMandatoryAgentSection, generatePreamble, generateClientBlocksSection, generateInvariantsPriorArtSection, } from './spawn-prompt-helpers.js';
|
|
30
30
|
import { checkLaneLock } from './lane-lock.js';
|
|
31
|
+
import { detectMandatoryAgents } from './orchestration-rules.js';
|
|
31
32
|
const DEFAULT_WORKTREES_DIR_SEGMENT = DIRECTORIES.WORKTREES.replace(/\/+$/g, '');
|
|
32
33
|
const XML_CAPABLE_CLIENTS = new Set(['claude-code', 'claude']);
|
|
33
34
|
const XML_HANDOFF_EXTENSION = 'xml';
|
|
@@ -116,11 +117,11 @@ export function renderHandoffForClient(doc, id, clientName, options = {}) {
|
|
|
116
117
|
* @returns {string} Complete Task tool invocation
|
|
117
118
|
*/
|
|
118
119
|
export function generateTaskInvocation(doc, id, strategy, options = {}) {
|
|
120
|
+
const config = options.config || getConfig();
|
|
119
121
|
const codePaths = doc.code_paths || [];
|
|
120
|
-
const mandatoryAgents = detectMandatoryAgents(codePaths);
|
|
122
|
+
const mandatoryAgents = detectMandatoryAgents(codePaths, config);
|
|
121
123
|
const preamble = generatePreamble(id, strategy);
|
|
122
124
|
const clientContext = options.client;
|
|
123
|
-
const config = options.config || getConfig();
|
|
124
125
|
const worktreesDirSegment = resolveWorktreesDirSegment(config);
|
|
125
126
|
const worktreePathHint = resolveWorktreePathHint(doc, id, config);
|
|
126
127
|
const mainRef = `${config.git.defaultRemote}/${config.git.mainBranch}`;
|
|
@@ -326,15 +327,15 @@ ${constraints}`;
|
|
|
326
327
|
* @returns {string} Complete Codex prompt
|
|
327
328
|
*/
|
|
328
329
|
export function generateCodexPrompt(doc, id, strategy, options = {}) {
|
|
330
|
+
const config = options.config || getConfig();
|
|
329
331
|
const codePaths = doc.code_paths || [];
|
|
330
|
-
const mandatoryAgents = detectMandatoryAgents(codePaths);
|
|
332
|
+
const mandatoryAgents = detectMandatoryAgents(codePaths, config);
|
|
331
333
|
const preamble = generatePreamble(id, strategy);
|
|
332
334
|
const mandatorySection = generateMandatoryAgentSection(mandatoryAgents, id);
|
|
333
335
|
const laneGuidance = generateLaneGuidance(doc.lane);
|
|
334
336
|
const bugDiscoverySection = generateBugDiscoverySection(id);
|
|
335
337
|
const implementationContext = generateImplementationContext(doc);
|
|
336
338
|
const clientContext = options.client;
|
|
337
|
-
const config = options.config || getConfig();
|
|
338
339
|
const classificationConfig = config?.methodology?.work_classification;
|
|
339
340
|
const classification = classifyWork({
|
|
340
341
|
code_paths: doc.code_paths,
|