agent-bober 0.15.0 → 0.17.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/.claude-plugin/marketplace.json +20 -0
- package/.claude-plugin/plugin.json +2 -2
- package/CHANGELOG.md +30 -0
- package/README.md +127 -3
- package/agents/bober-architect.md +34 -0
- package/agents/bober-code-reviewer.md +2 -0
- package/agents/bober-curator.md +12 -0
- package/agents/bober-documenter.md +129 -0
- package/agents/bober-evaluator.md +46 -0
- package/agents/bober-generator.md +12 -0
- package/agents/bober-planner.md +8 -1
- package/dist/cli/commands/graph.js +3 -3
- package/dist/cli/commands/graph.js.map +1 -1
- package/dist/cli/commands/init.js +4 -0
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/memory.d.ts +14 -0
- package/dist/cli/commands/memory.d.ts.map +1 -0
- package/dist/cli/commands/memory.js +132 -0
- package/dist/cli/commands/memory.js.map +1 -0
- package/dist/cli/index.js +6 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +14 -3
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +7 -0
- package/dist/config/loader.js.map +1 -1
- package/dist/config/role-providers.d.ts +29 -0
- package/dist/config/role-providers.d.ts.map +1 -0
- package/dist/config/role-providers.js +115 -0
- package/dist/config/role-providers.js.map +1 -0
- package/dist/config/schema.d.ts +383 -14
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +42 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/contracts/eval-result.d.ts +112 -56
- package/dist/contracts/eval-result.d.ts.map +1 -1
- package/dist/contracts/eval-result.js +3 -0
- package/dist/contracts/eval-result.js.map +1 -1
- package/dist/contracts/sprint-contract.d.ts +30 -30
- package/dist/fleet/aggregator.d.ts +5 -0
- package/dist/fleet/aggregator.d.ts.map +1 -0
- package/dist/fleet/aggregator.js +39 -0
- package/dist/fleet/aggregator.js.map +1 -0
- package/dist/fleet/child-config.d.ts +12 -0
- package/dist/fleet/child-config.d.ts.map +1 -0
- package/dist/fleet/child-config.js +38 -0
- package/dist/fleet/child-config.js.map +1 -0
- package/dist/fleet/coordinator.d.ts +25 -0
- package/dist/fleet/coordinator.d.ts.map +1 -0
- package/dist/fleet/coordinator.js +40 -0
- package/dist/fleet/coordinator.js.map +1 -0
- package/dist/fleet/index.d.ts +40 -0
- package/dist/fleet/index.d.ts.map +1 -0
- package/dist/fleet/index.js +117 -0
- package/dist/fleet/index.js.map +1 -0
- package/dist/fleet/manifest.d.ts +51 -0
- package/dist/fleet/manifest.d.ts.map +1 -0
- package/dist/fleet/manifest.js +32 -0
- package/dist/fleet/manifest.js.map +1 -0
- package/dist/fleet/reporter.d.ts +32 -0
- package/dist/fleet/reporter.d.ts.map +1 -0
- package/dist/fleet/reporter.js +71 -0
- package/dist/fleet/reporter.js.map +1 -0
- package/dist/fleet/runner.d.ts +48 -0
- package/dist/fleet/runner.d.ts.map +1 -0
- package/dist/fleet/runner.js +104 -0
- package/dist/fleet/runner.js.map +1 -0
- package/dist/fleet/scaffolder.d.ts +12 -0
- package/dist/fleet/scaffolder.d.ts.map +1 -0
- package/dist/fleet/scaffolder.js +82 -0
- package/dist/fleet/scaffolder.js.map +1 -0
- package/dist/fleet/types.d.ts +21 -0
- package/dist/fleet/types.d.ts.map +1 -0
- package/dist/fleet/types.js +2 -0
- package/dist/fleet/types.js.map +1 -0
- package/dist/graph/cli.d.ts +6 -2
- package/dist/graph/cli.d.ts.map +1 -1
- package/dist/graph/cli.js +53 -12
- package/dist/graph/cli.js.map +1 -1
- package/dist/graph/pipeline-lifecycle.d.ts +9 -0
- package/dist/graph/pipeline-lifecycle.d.ts.map +1 -1
- package/dist/graph/pipeline-lifecycle.js +12 -0
- package/dist/graph/pipeline-lifecycle.js.map +1 -1
- package/dist/graph/preflight-injector.d.ts +14 -0
- package/dist/graph/preflight-injector.d.ts.map +1 -1
- package/dist/graph/preflight-injector.js +84 -4
- package/dist/graph/preflight-injector.js.map +1 -1
- package/dist/incident/types.d.ts +24 -24
- package/dist/mcp/tools/graph-schemas.d.ts +7 -7
- package/dist/mcp/tools/init.d.ts.map +1 -1
- package/dist/mcp/tools/init.js +2 -0
- package/dist/mcp/tools/init.js.map +1 -1
- package/dist/orchestrator/agent-loader.d.ts.map +1 -1
- package/dist/orchestrator/agent-loader.js +15 -1
- package/dist/orchestrator/agent-loader.js.map +1 -1
- package/dist/orchestrator/agentic-loop.d.ts +51 -0
- package/dist/orchestrator/agentic-loop.d.ts.map +1 -1
- package/dist/orchestrator/agentic-loop.js +123 -4
- package/dist/orchestrator/agentic-loop.js.map +1 -1
- package/dist/orchestrator/arch-lenses.d.ts +7 -0
- package/dist/orchestrator/arch-lenses.d.ts.map +1 -0
- package/dist/orchestrator/arch-lenses.js +22 -0
- package/dist/orchestrator/arch-lenses.js.map +1 -0
- package/dist/orchestrator/architect-agent.d.ts +16 -0
- package/dist/orchestrator/architect-agent.d.ts.map +1 -1
- package/dist/orchestrator/architect-agent.js +509 -1
- package/dist/orchestrator/architect-agent.js.map +1 -1
- package/dist/orchestrator/curator-agent.js +1 -1
- package/dist/orchestrator/curator-agent.js.map +1 -1
- package/dist/orchestrator/deploy/types.d.ts +2 -2
- package/dist/orchestrator/documenter-agent.d.ts +57 -0
- package/dist/orchestrator/documenter-agent.d.ts.map +1 -0
- package/dist/orchestrator/documenter-agent.js +195 -0
- package/dist/orchestrator/documenter-agent.js.map +1 -0
- package/dist/orchestrator/environment.d.ts +45 -0
- package/dist/orchestrator/environment.d.ts.map +1 -0
- package/dist/orchestrator/environment.js +151 -0
- package/dist/orchestrator/environment.js.map +1 -0
- package/dist/orchestrator/eval-lenses.d.ts +7 -0
- package/dist/orchestrator/eval-lenses.d.ts.map +1 -0
- package/dist/orchestrator/eval-lenses.js +19 -0
- package/dist/orchestrator/eval-lenses.js.map +1 -0
- package/dist/orchestrator/eval-persist.d.ts +25 -0
- package/dist/orchestrator/eval-persist.d.ts.map +1 -0
- package/dist/orchestrator/eval-persist.js +74 -0
- package/dist/orchestrator/eval-persist.js.map +1 -0
- package/dist/orchestrator/evaluator-agent.d.ts +23 -0
- package/dist/orchestrator/evaluator-agent.d.ts.map +1 -1
- package/dist/orchestrator/evaluator-agent.js +60 -3
- package/dist/orchestrator/evaluator-agent.js.map +1 -1
- package/dist/orchestrator/generator-agent.d.ts.map +1 -1
- package/dist/orchestrator/generator-agent.js +32 -0
- package/dist/orchestrator/generator-agent.js.map +1 -1
- package/dist/orchestrator/memory/distill.d.ts +60 -0
- package/dist/orchestrator/memory/distill.d.ts.map +1 -0
- package/dist/orchestrator/memory/distill.js +177 -0
- package/dist/orchestrator/memory/distill.js.map +1 -0
- package/dist/orchestrator/memory/eval-source.d.ts +20 -0
- package/dist/orchestrator/memory/eval-source.d.ts.map +1 -0
- package/dist/orchestrator/memory/eval-source.js +88 -0
- package/dist/orchestrator/memory/eval-source.js.map +1 -0
- package/dist/orchestrator/memory/retrieve.d.ts +45 -0
- package/dist/orchestrator/memory/retrieve.d.ts.map +1 -0
- package/dist/orchestrator/memory/retrieve.js +102 -0
- package/dist/orchestrator/memory/retrieve.js.map +1 -0
- package/dist/orchestrator/model-resolver.d.ts.map +1 -1
- package/dist/orchestrator/model-resolver.js +12 -0
- package/dist/orchestrator/model-resolver.js.map +1 -1
- package/dist/orchestrator/pipeline.d.ts +10 -0
- package/dist/orchestrator/pipeline.d.ts.map +1 -1
- package/dist/orchestrator/pipeline.js +111 -3
- package/dist/orchestrator/pipeline.js.map +1 -1
- package/dist/orchestrator/planner-agent.d.ts +22 -1
- package/dist/orchestrator/planner-agent.d.ts.map +1 -1
- package/dist/orchestrator/planner-agent.js +160 -4
- package/dist/orchestrator/planner-agent.js.map +1 -1
- package/dist/orchestrator/research-agent.js +2 -2
- package/dist/orchestrator/research-agent.js.map +1 -1
- package/dist/orchestrator/tools/handlers.d.ts +14 -0
- package/dist/orchestrator/tools/handlers.d.ts.map +1 -1
- package/dist/orchestrator/tools/handlers.js +29 -4
- package/dist/orchestrator/tools/handlers.js.map +1 -1
- package/dist/orchestrator/tools/schemas.js +5 -5
- package/dist/orchestrator/tools/schemas.js.map +1 -1
- package/dist/orchestrator/workflow/args-builder.d.ts +35 -0
- package/dist/orchestrator/workflow/args-builder.d.ts.map +1 -0
- package/dist/orchestrator/workflow/args-builder.js +142 -0
- package/dist/orchestrator/workflow/args-builder.js.map +1 -0
- package/dist/orchestrator/workflow/budget.d.ts +57 -0
- package/dist/orchestrator/workflow/budget.d.ts.map +1 -0
- package/dist/orchestrator/workflow/budget.js +80 -0
- package/dist/orchestrator/workflow/budget.js.map +1 -0
- package/dist/orchestrator/workflow/conformance.d.ts +27 -0
- package/dist/orchestrator/workflow/conformance.d.ts.map +1 -0
- package/dist/orchestrator/workflow/conformance.js +111 -0
- package/dist/orchestrator/workflow/conformance.js.map +1 -0
- package/dist/orchestrator/workflow/eligibility.d.ts +8 -0
- package/dist/orchestrator/workflow/eligibility.d.ts.map +1 -0
- package/dist/orchestrator/workflow/eligibility.js +10 -0
- package/dist/orchestrator/workflow/eligibility.js.map +1 -0
- package/dist/orchestrator/workflow/engine.d.ts +10 -0
- package/dist/orchestrator/workflow/engine.d.ts.map +1 -0
- package/dist/orchestrator/workflow/engine.js +2 -0
- package/dist/orchestrator/workflow/engine.js.map +1 -0
- package/dist/orchestrator/workflow/errors.d.ts +13 -0
- package/dist/orchestrator/workflow/errors.d.ts.map +1 -0
- package/dist/orchestrator/workflow/errors.js +26 -0
- package/dist/orchestrator/workflow/errors.js.map +1 -0
- package/dist/orchestrator/workflow/flusher.d.ts +19 -0
- package/dist/orchestrator/workflow/flusher.d.ts.map +1 -0
- package/dist/orchestrator/workflow/flusher.js +81 -0
- package/dist/orchestrator/workflow/flusher.js.map +1 -0
- package/dist/orchestrator/workflow/interpreter.d.ts +48 -0
- package/dist/orchestrator/workflow/interpreter.d.ts.map +1 -0
- package/dist/orchestrator/workflow/interpreter.js +92 -0
- package/dist/orchestrator/workflow/interpreter.js.map +1 -0
- package/dist/orchestrator/workflow/pure-sprint.d.ts +65 -0
- package/dist/orchestrator/workflow/pure-sprint.d.ts.map +1 -0
- package/dist/orchestrator/workflow/pure-sprint.js +82 -0
- package/dist/orchestrator/workflow/pure-sprint.js.map +1 -0
- package/dist/orchestrator/workflow/reconciler.d.ts +15 -0
- package/dist/orchestrator/workflow/reconciler.d.ts.map +1 -0
- package/dist/orchestrator/workflow/reconciler.js +65 -0
- package/dist/orchestrator/workflow/reconciler.js.map +1 -0
- package/dist/orchestrator/workflow/resume-cursor.d.ts +10 -0
- package/dist/orchestrator/workflow/resume-cursor.d.ts.map +1 -0
- package/dist/orchestrator/workflow/resume-cursor.js +25 -0
- package/dist/orchestrator/workflow/resume-cursor.js.map +1 -0
- package/dist/orchestrator/workflow/retry.d.ts +50 -0
- package/dist/orchestrator/workflow/retry.d.ts.map +1 -0
- package/dist/orchestrator/workflow/retry.js +100 -0
- package/dist/orchestrator/workflow/retry.js.map +1 -0
- package/dist/orchestrator/workflow/scheduler.d.ts +87 -0
- package/dist/orchestrator/workflow/scheduler.d.ts.map +1 -0
- package/dist/orchestrator/workflow/scheduler.js +158 -0
- package/dist/orchestrator/workflow/scheduler.js.map +1 -0
- package/dist/orchestrator/workflow/selector.d.ts +26 -0
- package/dist/orchestrator/workflow/selector.d.ts.map +1 -0
- package/dist/orchestrator/workflow/selector.js +54 -0
- package/dist/orchestrator/workflow/selector.js.map +1 -0
- package/dist/orchestrator/workflow/synthesizer.d.ts +52 -0
- package/dist/orchestrator/workflow/synthesizer.d.ts.map +1 -0
- package/dist/orchestrator/workflow/synthesizer.js +75 -0
- package/dist/orchestrator/workflow/synthesizer.js.map +1 -0
- package/dist/orchestrator/workflow/ts-engine.d.ts +13 -0
- package/dist/orchestrator/workflow/ts-engine.d.ts.map +1 -0
- package/dist/orchestrator/workflow/ts-engine.js +14 -0
- package/dist/orchestrator/workflow/ts-engine.js.map +1 -0
- package/dist/orchestrator/workflow/types.d.ts +55 -0
- package/dist/orchestrator/workflow/types.d.ts.map +1 -0
- package/dist/orchestrator/workflow/types.js +3 -0
- package/dist/orchestrator/workflow/types.js.map +1 -0
- package/dist/orchestrator/workflow/workflow-engine.d.ts +31 -0
- package/dist/orchestrator/workflow/workflow-engine.d.ts.map +1 -0
- package/dist/orchestrator/workflow/workflow-engine.js +70 -0
- package/dist/orchestrator/workflow/workflow-engine.js.map +1 -0
- package/dist/providers/anthropic.d.ts.map +1 -1
- package/dist/providers/anthropic.js +49 -6
- package/dist/providers/anthropic.js.map +1 -1
- package/dist/providers/claude-code.d.ts +44 -0
- package/dist/providers/claude-code.d.ts.map +1 -0
- package/dist/providers/claude-code.js +143 -0
- package/dist/providers/claude-code.js.map +1 -0
- package/dist/providers/factory.d.ts +16 -2
- package/dist/providers/factory.d.ts.map +1 -1
- package/dist/providers/factory.js +66 -12
- package/dist/providers/factory.js.map +1 -1
- package/dist/providers/google.d.ts.map +1 -1
- package/dist/providers/google.js +27 -3
- package/dist/providers/google.js.map +1 -1
- package/dist/providers/index.d.ts +3 -1
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +3 -1
- package/dist/providers/index.js.map +1 -1
- package/dist/providers/openai.d.ts.map +1 -1
- package/dist/providers/openai.js +24 -3
- package/dist/providers/openai.js.map +1 -1
- package/dist/providers/preflight.d.ts +22 -0
- package/dist/providers/preflight.d.ts.map +1 -0
- package/dist/providers/preflight.js +54 -0
- package/dist/providers/preflight.js.map +1 -0
- package/dist/providers/structured.d.ts +130 -0
- package/dist/providers/structured.d.ts.map +1 -0
- package/dist/providers/structured.js +205 -0
- package/dist/providers/structured.js.map +1 -0
- package/dist/providers/types.d.ts +28 -0
- package/dist/providers/types.d.ts.map +1 -1
- package/dist/state/history-rotation.d.ts +17 -0
- package/dist/state/history-rotation.d.ts.map +1 -0
- package/dist/state/history-rotation.js +84 -0
- package/dist/state/history-rotation.js.map +1 -0
- package/dist/state/history.d.ts +16 -4
- package/dist/state/history.d.ts.map +1 -1
- package/dist/state/history.js +62 -20
- package/dist/state/history.js.map +1 -1
- package/dist/state/index.d.ts +1 -1
- package/dist/state/index.d.ts.map +1 -1
- package/dist/state/index.js +1 -1
- package/dist/state/index.js.map +1 -1
- package/dist/state/memory.d.ts +60 -0
- package/dist/state/memory.d.ts.map +1 -0
- package/dist/state/memory.js +242 -0
- package/dist/state/memory.js.map +1 -0
- package/hooks/hooks.json +12 -2
- package/package.json +9 -5
- package/scripts/spike-claude-code-provider.mjs +66 -0
- package/scripts/spike-deepseek.mjs +63 -0
- package/scripts/sync-targets.json +12 -0
- package/scripts/update-all.mjs +255 -0
- package/skills/bober.architect/SKILL.md +13 -0
- package/skills/bober.architect/references/arch-lens-panel.md +126 -0
- package/skills/bober.eval/SKILL.md +9 -0
- package/skills/bober.eval/references/lens-panel.md +115 -0
- package/skills/bober.plan/SKILL.md +6 -0
- package/skills/bober.run/SKILL.md +23 -4
- package/skills/bober.run/references/lens-panel.md +115 -0
- package/skills/bober.sprint/SKILL.md +44 -2
- package/skills/bober.sprint/references/lens-panel.md +115 -0
- package/skills/shared/arch-lens-panel.md +126 -0
- package/skills/shared/lens-panel.md +115 -0
|
@@ -7,8 +7,12 @@ import { resolveRoleTools, getGraphState, getGraphDeps } from "./tools/index.js"
|
|
|
7
7
|
import { runAgenticLoop } from "./agentic-loop.js";
|
|
8
8
|
import { PreflightContextInjector } from "../graph/preflight-injector.js";
|
|
9
9
|
import { graphPipelineLifecycle } from "../graph/pipeline-lifecycle.js";
|
|
10
|
+
import { synthesize } from "./workflow/synthesizer.js";
|
|
11
|
+
import { resolveArchLensFocus } from "./arch-lenses.js";
|
|
12
|
+
import { reconcile } from "./workflow/reconciler.js";
|
|
13
|
+
import { mapBounded } from "./workflow/scheduler.js";
|
|
10
14
|
// ── Constants ──────────────────────────────────────────────────────
|
|
11
|
-
const ARCHITECT_MAX_TURNS =
|
|
15
|
+
const ARCHITECT_MAX_TURNS = 100;
|
|
12
16
|
const RESEARCH_MAX_LINES = 300;
|
|
13
17
|
// ── ID Generation ──────────────────────────────────────────────────
|
|
14
18
|
function generateArchitectId(userPrompt) {
|
|
@@ -95,6 +99,19 @@ function parseArchitectResponse(text) {
|
|
|
95
99
|
*/
|
|
96
100
|
export async function runArchitect(userPrompt, projectRoot, config, researchDoc) {
|
|
97
101
|
logger.phase("Architect Phase");
|
|
102
|
+
const panel = config.architect?.panel;
|
|
103
|
+
if (!panel?.enabled || panel.lenses.length < 2) {
|
|
104
|
+
return runArchitectSingleLoop(userPrompt, projectRoot, config, researchDoc);
|
|
105
|
+
}
|
|
106
|
+
return runArchitectPanel(userPrompt, projectRoot, config, panel, researchDoc);
|
|
107
|
+
}
|
|
108
|
+
// ── Single-loop path (OFF path — verbatim original body) ───────────
|
|
109
|
+
/**
|
|
110
|
+
* Run the original single monolithic runAgenticLoop flow (CP1–CP5 in one call).
|
|
111
|
+
* This is the byte-identical off path — called when architect.panel is disabled
|
|
112
|
+
* or fewer than 2 lenses are configured.
|
|
113
|
+
*/
|
|
114
|
+
async function runArchitectSingleLoop(userPrompt, projectRoot, config, researchDoc) {
|
|
98
115
|
const architectId = generateArchitectId(userPrompt);
|
|
99
116
|
logger.info(`Architecture ID: ${architectId}`);
|
|
100
117
|
// Architect gets read + write tools for saving artifacts. When graph is enabled
|
|
@@ -269,4 +286,495 @@ After saving all files, respond with EXACTLY this JSON (no markdown fences, no o
|
|
|
269
286
|
decisionCount,
|
|
270
287
|
};
|
|
271
288
|
}
|
|
289
|
+
// ── Panel path (ON path — CP2 synthesis via lens fan-out) ──────────
|
|
290
|
+
/**
|
|
291
|
+
* Run the panel-driven architect flow. CP2 (approach selection) is executed
|
|
292
|
+
* as a discrete seam:
|
|
293
|
+
* 1. Generate candidate approaches via a focused LLM call.
|
|
294
|
+
* 2. Fan out one lens scorer per lens (bounded by maxConcurrent).
|
|
295
|
+
* 3. synthesize() selects the ranked winner.
|
|
296
|
+
* 4. A continuation call runs CP1/CP3/CP4/CP5 and assembles the doc + ADR-1.
|
|
297
|
+
*/
|
|
298
|
+
async function runArchitectPanel(userPrompt, projectRoot, config, panel, researchDoc) {
|
|
299
|
+
const architectId = generateArchitectId(userPrompt);
|
|
300
|
+
logger.info(`Architecture ID (panel): ${architectId}`);
|
|
301
|
+
// Build shared tool set and system prompt (same as single-loop path).
|
|
302
|
+
const graphState = getGraphState(config);
|
|
303
|
+
const graphDeps = graphState.engineHealth === "ready" ? getGraphDeps() : undefined;
|
|
304
|
+
const toolSet = resolveRoleTools("architect", projectRoot, graphState, graphDeps ?? undefined);
|
|
305
|
+
const systemPrompt = await assembleSystemPrompt("architect", "bober-architect", projectRoot, graphState);
|
|
306
|
+
// All LLM calls use config.planner.* (architect section only carries panel).
|
|
307
|
+
const client = createClient(config.planner.provider ?? null, config.planner.endpoint ?? null, config.planner.providerConfig, config.planner.model, "Architect");
|
|
308
|
+
const model = resolveModel(config.planner.model);
|
|
309
|
+
const researchSection = researchDoc
|
|
310
|
+
? `\n\n## Research Findings\n\n${truncateResearch(researchDoc)}`
|
|
311
|
+
: "";
|
|
312
|
+
// ── Step 1: Generate candidate approaches (CP2 only) ────────────
|
|
313
|
+
const generateApproachesMessage = `You are the Bober Architect agent running in AUTONOMOUS mode. There is NO user to interact with.
|
|
314
|
+
|
|
315
|
+
## Feature Description (Your Problem Space)
|
|
316
|
+
|
|
317
|
+
${userPrompt}
|
|
318
|
+
|
|
319
|
+
## Architecture ID
|
|
320
|
+
|
|
321
|
+
Use this exact ID for all saved artifacts: **${architectId}**
|
|
322
|
+
|
|
323
|
+
## Project Root
|
|
324
|
+
|
|
325
|
+
${projectRoot}
|
|
326
|
+
${researchSection}
|
|
327
|
+
|
|
328
|
+
## Instructions
|
|
329
|
+
|
|
330
|
+
Run ONLY Checkpoint 2: Approach Selection.
|
|
331
|
+
|
|
332
|
+
### Checkpoint 2: Approach Selection
|
|
333
|
+
Present exactly 2-3 architectural approaches in the structured format below. For each approach:
|
|
334
|
+
- Give it a short identifier (e.g., "approach-A", "approach-B", "approach-C")
|
|
335
|
+
- Describe its key characteristics
|
|
336
|
+
- Note main tradeoffs
|
|
337
|
+
|
|
338
|
+
## Output Format
|
|
339
|
+
|
|
340
|
+
After your analysis, respond with EXACTLY this JSON (no markdown fences, no other text):
|
|
341
|
+
{
|
|
342
|
+
"approaches": ["approach-A", "approach-B", "approach-C"]
|
|
343
|
+
}`;
|
|
344
|
+
const graphClient = graphPipelineLifecycle.getGraphClient();
|
|
345
|
+
const preflightInjector = new PreflightContextInjector(graphClient, config.graph);
|
|
346
|
+
const enhancedGenerateMessage = await preflightInjector.inject("architect", null, generateApproachesMessage);
|
|
347
|
+
logger.info(`Calling architect model (${config.planner.model} → ${model}) — generating approaches...`);
|
|
348
|
+
const generateResult = await runAgenticLoop({
|
|
349
|
+
client,
|
|
350
|
+
model,
|
|
351
|
+
systemPrompt,
|
|
352
|
+
userMessage: enhancedGenerateMessage,
|
|
353
|
+
tools: toolSet.schemas,
|
|
354
|
+
toolHandlers: toolSet.handlers,
|
|
355
|
+
maxTurns: ARCHITECT_MAX_TURNS,
|
|
356
|
+
maxTokens: 16384,
|
|
357
|
+
onToolUse: (name, input) => {
|
|
358
|
+
const inputStr = typeof input === "object" && input !== null
|
|
359
|
+
? JSON.stringify(input).slice(0, 100)
|
|
360
|
+
: String(input);
|
|
361
|
+
logger.debug(` [architect-gen] ${name}(${inputStr})`);
|
|
362
|
+
},
|
|
363
|
+
});
|
|
364
|
+
// Parse the approaches from the generate result
|
|
365
|
+
let approaches = [];
|
|
366
|
+
try {
|
|
367
|
+
const parsed = JSON.parse(generateResult.finalText.trim());
|
|
368
|
+
if (typeof parsed === "object" &&
|
|
369
|
+
parsed !== null &&
|
|
370
|
+
"approaches" in parsed &&
|
|
371
|
+
Array.isArray(parsed.approaches)) {
|
|
372
|
+
const arr = parsed.approaches;
|
|
373
|
+
approaches = arr.filter((x) => typeof x === "string");
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
catch {
|
|
377
|
+
// Try fence extraction
|
|
378
|
+
const fenceMatch = /```(?:json)?\s*\n?([\s\S]*?)\n?\s*```/.exec(generateResult.finalText);
|
|
379
|
+
if (fenceMatch) {
|
|
380
|
+
try {
|
|
381
|
+
const parsed = JSON.parse(fenceMatch[1].trim());
|
|
382
|
+
if (typeof parsed === "object" &&
|
|
383
|
+
parsed !== null &&
|
|
384
|
+
"approaches" in parsed &&
|
|
385
|
+
Array.isArray(parsed.approaches)) {
|
|
386
|
+
const arr = parsed.approaches;
|
|
387
|
+
approaches = arr.filter((x) => typeof x === "string");
|
|
388
|
+
}
|
|
389
|
+
}
|
|
390
|
+
catch {
|
|
391
|
+
// Fall through
|
|
392
|
+
}
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
// Fallback: ensure at least one approach so synthesize() does not throw
|
|
396
|
+
if (approaches.length === 0) {
|
|
397
|
+
logger.warn("Could not parse approaches from generate step; using fallback approach identifier.");
|
|
398
|
+
approaches = ["approach-A"];
|
|
399
|
+
}
|
|
400
|
+
// ── Step 2: Fan out per-lens scoring (bounded concurrency) ────────
|
|
401
|
+
logger.info(`Scoring ${approaches.length} approaches across ${panel.lenses.length} lenses (maxConcurrent=${panel.maxConcurrent})...`);
|
|
402
|
+
const scoreLens = async (lens) => {
|
|
403
|
+
const lensBlock = `\n\n## Scoring Lens: ${lens}\n${resolveArchLensFocus(lens)}`;
|
|
404
|
+
const scoringMessage = `You are the Bober Architect agent acting as a lens scorer. Evaluate the following architectural approaches through the specified lens.
|
|
405
|
+
|
|
406
|
+
## Feature Description
|
|
407
|
+
|
|
408
|
+
${userPrompt}
|
|
409
|
+
|
|
410
|
+
## Approaches to Score
|
|
411
|
+
|
|
412
|
+
${approaches.map((a, i) => `${i + 1}. ${a}`).join("\n")}
|
|
413
|
+
|
|
414
|
+
## Scoring Instructions
|
|
415
|
+
|
|
416
|
+
Score each approach on a scale of 0–100 for the lens specified below. Higher score = better fit for that lens criterion.${lensBlock}
|
|
417
|
+
|
|
418
|
+
## Output Format
|
|
419
|
+
|
|
420
|
+
Respond with EXACTLY this JSON (no markdown fences, no other text):
|
|
421
|
+
{
|
|
422
|
+
"lens": "${lens}",
|
|
423
|
+
"scores": {
|
|
424
|
+
${approaches.map((a) => `"${a}": <0-100>`).join(",\n ")}
|
|
425
|
+
}
|
|
426
|
+
}`;
|
|
427
|
+
const enhancedScoringMessage = await preflightInjector.inject("architect", null, scoringMessage);
|
|
428
|
+
logger.info(` Scoring lens: ${lens}...`);
|
|
429
|
+
const scoringResult = await runAgenticLoop({
|
|
430
|
+
client,
|
|
431
|
+
model,
|
|
432
|
+
systemPrompt,
|
|
433
|
+
userMessage: enhancedScoringMessage,
|
|
434
|
+
tools: toolSet.schemas,
|
|
435
|
+
toolHandlers: toolSet.handlers,
|
|
436
|
+
maxTurns: ARCHITECT_MAX_TURNS,
|
|
437
|
+
maxTokens: 16384,
|
|
438
|
+
onToolUse: (name, input) => {
|
|
439
|
+
const inputStr = typeof input === "object" && input !== null
|
|
440
|
+
? JSON.stringify(input).slice(0, 100)
|
|
441
|
+
: String(input);
|
|
442
|
+
logger.debug(` [architect-score:${lens}] ${name}(${inputStr})`);
|
|
443
|
+
},
|
|
444
|
+
});
|
|
445
|
+
// Parse scoring result
|
|
446
|
+
try {
|
|
447
|
+
const parsed = JSON.parse(scoringResult.finalText.trim());
|
|
448
|
+
if (typeof parsed === "object" &&
|
|
449
|
+
parsed !== null &&
|
|
450
|
+
"scores" in parsed &&
|
|
451
|
+
typeof parsed.scores === "object") {
|
|
452
|
+
const rawScores = parsed.scores;
|
|
453
|
+
const scores = {};
|
|
454
|
+
for (const approach of approaches) {
|
|
455
|
+
const v = rawScores[approach];
|
|
456
|
+
scores[approach] = typeof v === "number" ? v : 50;
|
|
457
|
+
}
|
|
458
|
+
return { lens, scores };
|
|
459
|
+
}
|
|
460
|
+
}
|
|
461
|
+
catch {
|
|
462
|
+
// Fall through to default
|
|
463
|
+
}
|
|
464
|
+
// Fallback: equal scores
|
|
465
|
+
const fallbackScores = {};
|
|
466
|
+
for (const approach of approaches) {
|
|
467
|
+
fallbackScores[approach] = 50;
|
|
468
|
+
}
|
|
469
|
+
return { lens, scores: fallbackScores };
|
|
470
|
+
};
|
|
471
|
+
const lensScores = await mapBounded(panel.lenses, panel.maxConcurrent, scoreLens);
|
|
472
|
+
// ── Step 3: Synthesize winner ─────────────────────────────────────
|
|
473
|
+
const synthesisResult = synthesize(approaches, lensScores);
|
|
474
|
+
const winner = synthesisResult.winner;
|
|
475
|
+
logger.info(`Synthesis winner: ${winner} (dissent: ${synthesisResult.dissent.join(", ") || "none"})`);
|
|
476
|
+
// ── Step 4: Continuation — CP1/CP3/CP4/CP5 + doc/ADR-1 save ────────
|
|
477
|
+
const lensScoresSummary = lensScores
|
|
478
|
+
.map((ls) => `- **${ls.lens}**: ${Object.entries(ls.scores).map(([a, s]) => `${a}=${s}`).join(", ")}`)
|
|
479
|
+
.join("\n");
|
|
480
|
+
const continuationMessage = `You are the Bober Architect agent running in AUTONOMOUS mode. You have been spawned programmatically as part of the pipeline. There is NO user to interact with — you must self-discuss and self-decide at every checkpoint.
|
|
481
|
+
|
|
482
|
+
## Feature Description (Your Problem Space)
|
|
483
|
+
|
|
484
|
+
${userPrompt}
|
|
485
|
+
|
|
486
|
+
## Architecture ID
|
|
487
|
+
|
|
488
|
+
Use this exact ID for all saved artifacts: **${architectId}**
|
|
489
|
+
|
|
490
|
+
## Project Root
|
|
491
|
+
|
|
492
|
+
${projectRoot}
|
|
493
|
+
${researchSection}
|
|
494
|
+
|
|
495
|
+
## Checkpoint 2 Result (PRE-SELECTED — do not re-evaluate)
|
|
496
|
+
|
|
497
|
+
The approach selection was completed via multi-lens scoring. The selected approach is:
|
|
498
|
+
|
|
499
|
+
**Selected Approach: ${winner}**
|
|
500
|
+
|
|
501
|
+
Lens scoring summary:
|
|
502
|
+
${lensScoresSummary}
|
|
503
|
+
|
|
504
|
+
Dissent: ${synthesisResult.dissent.length > 0 ? synthesisResult.dissent.join("; ") : "none"}
|
|
505
|
+
|
|
506
|
+
## Instructions
|
|
507
|
+
|
|
508
|
+
Run Checkpoints 1, 3, 4, and 5 in strict order. Checkpoint 2 has already been decided above — use the selected approach (${winner}) as your architectural approach throughout.
|
|
509
|
+
|
|
510
|
+
For each checkpoint:
|
|
511
|
+
|
|
512
|
+
1. **Read the codebase first** using Glob, Grep, and Read tools. Cite specific file paths and line numbers.
|
|
513
|
+
2. **Self-discuss** — reason about tradeoffs as if presenting to a senior engineer.
|
|
514
|
+
3. **Make a decision** with explicit rationale.
|
|
515
|
+
4. **Draft an ADR** for each significant decision.
|
|
516
|
+
|
|
517
|
+
### Checkpoint 1: Problem Framing
|
|
518
|
+
Answer all 6 standard questions using the feature description above and any codebase evidence. Produce the Problem Statement section.
|
|
519
|
+
|
|
520
|
+
### Checkpoint 2: Approach Selection (ALREADY DONE)
|
|
521
|
+
The selected approach is **${winner}**. Draft ADR-1 documenting this selection and the lens scoring rationale above.
|
|
522
|
+
|
|
523
|
+
### Checkpoint 3: Component Design
|
|
524
|
+
Define all components with TypeScript interface signatures. Each component: responsibility (1 sentence), interface, dependencies. Draft an ADR for key boundary decisions if warranted.
|
|
525
|
+
|
|
526
|
+
### Checkpoint 4: Integration Strategy
|
|
527
|
+
Map the data flow as a concrete call chain. Define the API contracts table. Identify integration risks with severity and mitigation. Draft an ADR for key integration decisions if warranted.
|
|
528
|
+
|
|
529
|
+
### Checkpoint 5: Final Assembly
|
|
530
|
+
Compile all outputs into a single architecture document (cap at 500 lines). Save it to:
|
|
531
|
+
\`.bober/architecture/${architectId}-architecture.md\`
|
|
532
|
+
|
|
533
|
+
Save each ADR to:
|
|
534
|
+
\`.bober/architecture/${architectId}-adr-1.md\`
|
|
535
|
+
\`.bober/architecture/${architectId}-adr-2.md\`
|
|
536
|
+
(etc.)
|
|
537
|
+
|
|
538
|
+
## Output Format
|
|
539
|
+
|
|
540
|
+
After saving all files, respond with EXACTLY this JSON (no markdown fences, no other text):
|
|
541
|
+
{
|
|
542
|
+
"architectureId": "${architectId}",
|
|
543
|
+
"title": "<architecture title>",
|
|
544
|
+
"componentCount": <number of components defined>,
|
|
545
|
+
"decisionCount": <number of ADRs produced>,
|
|
546
|
+
"documentPath": ".bober/architecture/${architectId}-architecture.md",
|
|
547
|
+
"adrPaths": [".bober/architecture/${architectId}-adr-1.md"],
|
|
548
|
+
"summary": "<2-3 sentence summary of the architecture>"
|
|
549
|
+
}`;
|
|
550
|
+
const enhancedContinuationMessage = await preflightInjector.inject("architect", null, continuationMessage);
|
|
551
|
+
logger.info(`Calling architect model (${config.planner.model} → ${model}) — continuation (CP1/3/4/5)...`);
|
|
552
|
+
const continuationResult = await runAgenticLoop({
|
|
553
|
+
client,
|
|
554
|
+
model,
|
|
555
|
+
systemPrompt,
|
|
556
|
+
userMessage: enhancedContinuationMessage,
|
|
557
|
+
tools: toolSet.schemas,
|
|
558
|
+
toolHandlers: toolSet.handlers,
|
|
559
|
+
maxTurns: ARCHITECT_MAX_TURNS,
|
|
560
|
+
maxTokens: 16384,
|
|
561
|
+
onToolUse: (name, input) => {
|
|
562
|
+
const inputStr = typeof input === "object" && input !== null
|
|
563
|
+
? JSON.stringify(input).slice(0, 100)
|
|
564
|
+
: String(input);
|
|
565
|
+
logger.debug(` [architect-cont] ${name}(${inputStr})`);
|
|
566
|
+
},
|
|
567
|
+
});
|
|
568
|
+
logger.debug(`Architect panel continuation completed in ${continuationResult.turnsUsed} turns (tools: ${continuationResult.toolsCalled.length})`);
|
|
569
|
+
// Token-usage capture (failure does not break architecture).
|
|
570
|
+
try {
|
|
571
|
+
const { TokenUsageLog } = await import("../graph/token-usage.js");
|
|
572
|
+
const totalInput = generateResult.usage.inputTokens +
|
|
573
|
+
lensScores.length * 0 + // scoring usage tracked per-call inside scoreLens
|
|
574
|
+
continuationResult.usage.inputTokens;
|
|
575
|
+
const totalOutput = generateResult.usage.outputTokens +
|
|
576
|
+
continuationResult.usage.outputTokens;
|
|
577
|
+
await new TokenUsageLog(projectRoot).append({
|
|
578
|
+
agent: "architect",
|
|
579
|
+
runId: architectId,
|
|
580
|
+
timestamp: new Date().toISOString(),
|
|
581
|
+
inputTokens: totalInput,
|
|
582
|
+
outputTokens: totalOutput,
|
|
583
|
+
graphEnabled: config.graph?.enabled === true,
|
|
584
|
+
});
|
|
585
|
+
}
|
|
586
|
+
catch (err) {
|
|
587
|
+
logger.debug(`Token usage capture failed (architect panel): ${err instanceof Error ? err.message : String(err)}`);
|
|
588
|
+
}
|
|
589
|
+
const raw = parseArchitectResponse(continuationResult.finalText);
|
|
590
|
+
// Read back the saved architecture document
|
|
591
|
+
let document = "";
|
|
592
|
+
try {
|
|
593
|
+
const { readArchitecture } = await import("../state/index.js");
|
|
594
|
+
document = await readArchitecture(projectRoot, architectId);
|
|
595
|
+
}
|
|
596
|
+
catch {
|
|
597
|
+
logger.warn(`Could not read back architecture document for ${architectId}; using empty string.`);
|
|
598
|
+
}
|
|
599
|
+
// Read back saved ADRs
|
|
600
|
+
let adrs = [];
|
|
601
|
+
try {
|
|
602
|
+
const { readADRs } = await import("../state/index.js");
|
|
603
|
+
adrs = await readADRs(projectRoot, architectId);
|
|
604
|
+
}
|
|
605
|
+
catch {
|
|
606
|
+
logger.warn(`Could not read back ADRs for ${architectId}; using empty array.`);
|
|
607
|
+
}
|
|
608
|
+
const timestamp = new Date().toISOString();
|
|
609
|
+
const componentCount = typeof raw.componentCount === "number" ? raw.componentCount : 0;
|
|
610
|
+
const decisionCount = typeof raw.decisionCount === "number" ? raw.decisionCount : adrs.length;
|
|
611
|
+
// If the agent did not save the document itself, save a fallback
|
|
612
|
+
if (!document && continuationResult.finalText) {
|
|
613
|
+
const fallbackDoc = [
|
|
614
|
+
`# Architecture: ${userPrompt.slice(0, 80)}`,
|
|
615
|
+
``,
|
|
616
|
+
`**Architecture ID:** ${architectId}`,
|
|
617
|
+
`**Generated:** ${timestamp}`,
|
|
618
|
+
`**Status:** draft`,
|
|
619
|
+
`**Selected Approach:** ${winner}`,
|
|
620
|
+
``,
|
|
621
|
+
`---`,
|
|
622
|
+
``,
|
|
623
|
+
`## Summary`,
|
|
624
|
+
``,
|
|
625
|
+
raw.summary ?? "Architecture generation completed.",
|
|
626
|
+
``,
|
|
627
|
+
`---`,
|
|
628
|
+
``,
|
|
629
|
+
`## Agent Output`,
|
|
630
|
+
``,
|
|
631
|
+
continuationResult.finalText.slice(0, 3000),
|
|
632
|
+
].join("\n");
|
|
633
|
+
try {
|
|
634
|
+
await saveArchitecture(projectRoot, architectId, fallbackDoc);
|
|
635
|
+
document = fallbackDoc;
|
|
636
|
+
}
|
|
637
|
+
catch (err) {
|
|
638
|
+
logger.warn(`Failed to save fallback architecture: ${err instanceof Error ? err.message : String(err)}`);
|
|
639
|
+
}
|
|
640
|
+
}
|
|
641
|
+
// ── Step 5: CP5 review fan-out + reconcile (panel verdict) ──────
|
|
642
|
+
logger.info(`Running CP5 review across ${panel.lenses.length} lenses (maxConcurrent=${panel.maxConcurrent})...`);
|
|
643
|
+
const reviewLens = async (lens) => {
|
|
644
|
+
const lensBlock = `\n\n## Review Lens: ${lens}\n${resolveArchLensFocus(lens)}`;
|
|
645
|
+
const reviewMessage = `You are the Bober Architect agent acting as a lens reviewer. Review the assembled architecture document and ADRs through the specified lens and produce a PASS or FAIL verdict.
|
|
646
|
+
|
|
647
|
+
## Feature Description
|
|
648
|
+
|
|
649
|
+
${userPrompt}
|
|
650
|
+
|
|
651
|
+
## Assembled Architecture Document
|
|
652
|
+
|
|
653
|
+
${document.slice(0, 2000)}
|
|
654
|
+
|
|
655
|
+
## ADRs
|
|
656
|
+
|
|
657
|
+
${adrs.slice(0, 3).map((adr, i) => `### ADR-${i + 1}\n${adr.slice(0, 500)}`).join("\n\n")}
|
|
658
|
+
|
|
659
|
+
## Review Instructions
|
|
660
|
+
|
|
661
|
+
Review the architecture through the lens specified below. Determine whether the architecture PASSES or FAILS this lens criterion.${lensBlock}
|
|
662
|
+
|
|
663
|
+
## Output Format
|
|
664
|
+
|
|
665
|
+
Respond with EXACTLY this JSON (no markdown fences, no other text):
|
|
666
|
+
{
|
|
667
|
+
"passed": <true|false>,
|
|
668
|
+
"feedback": "<specific feedback on why the architecture passes or fails this lens>"
|
|
669
|
+
}`;
|
|
670
|
+
const enhancedReviewMessage = await preflightInjector.inject("architect", null, reviewMessage);
|
|
671
|
+
logger.info(` Reviewing lens: ${lens}...`);
|
|
672
|
+
const reviewResult = await runAgenticLoop({
|
|
673
|
+
client,
|
|
674
|
+
model,
|
|
675
|
+
systemPrompt,
|
|
676
|
+
userMessage: enhancedReviewMessage,
|
|
677
|
+
tools: toolSet.schemas,
|
|
678
|
+
toolHandlers: toolSet.handlers,
|
|
679
|
+
maxTurns: ARCHITECT_MAX_TURNS,
|
|
680
|
+
maxTokens: 16384,
|
|
681
|
+
onToolUse: (name, input) => {
|
|
682
|
+
const inputStr = typeof input === "object" && input !== null
|
|
683
|
+
? JSON.stringify(input).slice(0, 100)
|
|
684
|
+
: String(input);
|
|
685
|
+
logger.debug(` [architect-review:${lens}] ${name}(${inputStr})`);
|
|
686
|
+
},
|
|
687
|
+
});
|
|
688
|
+
// Parse review result into EvalResult shape
|
|
689
|
+
try {
|
|
690
|
+
const parsed = JSON.parse(reviewResult.finalText.trim());
|
|
691
|
+
if (typeof parsed === "object" &&
|
|
692
|
+
parsed !== null &&
|
|
693
|
+
"passed" in parsed &&
|
|
694
|
+
typeof parsed.passed === "boolean") {
|
|
695
|
+
const p = parsed;
|
|
696
|
+
const passed = p.passed;
|
|
697
|
+
const feedback = typeof p.feedback === "string" ? p.feedback : (passed ? "Architecture passes this lens." : "Architecture fails this lens.");
|
|
698
|
+
return {
|
|
699
|
+
evaluator: `lens:${lens}`,
|
|
700
|
+
passed,
|
|
701
|
+
details: [
|
|
702
|
+
{
|
|
703
|
+
criterion: lens,
|
|
704
|
+
passed,
|
|
705
|
+
message: feedback,
|
|
706
|
+
severity: passed ? "info" : "error",
|
|
707
|
+
},
|
|
708
|
+
],
|
|
709
|
+
summary: `Lens ${lens}: ${passed ? "PASS" : "FAIL"}`,
|
|
710
|
+
feedback,
|
|
711
|
+
timestamp,
|
|
712
|
+
};
|
|
713
|
+
}
|
|
714
|
+
}
|
|
715
|
+
catch {
|
|
716
|
+
// Fall through to fail-closed fallback
|
|
717
|
+
}
|
|
718
|
+
// Fail-closed fallback: unparseable review counts as FAIL
|
|
719
|
+
return {
|
|
720
|
+
evaluator: `lens:${lens}`,
|
|
721
|
+
passed: false,
|
|
722
|
+
details: [
|
|
723
|
+
{
|
|
724
|
+
criterion: lens,
|
|
725
|
+
passed: false,
|
|
726
|
+
message: "Review response could not be parsed; treated as FAIL (fail-closed).",
|
|
727
|
+
severity: "error",
|
|
728
|
+
},
|
|
729
|
+
],
|
|
730
|
+
summary: `Lens ${lens}: FAIL (parse error)`,
|
|
731
|
+
feedback: "Review response could not be parsed; treated as FAIL (fail-closed).",
|
|
732
|
+
timestamp,
|
|
733
|
+
};
|
|
734
|
+
};
|
|
735
|
+
const lensReviews = await mapBounded(panel.lenses, panel.maxConcurrent, reviewLens);
|
|
736
|
+
const verdict = reconcile(architectId, 1, lensReviews, timestamp);
|
|
737
|
+
logger.info(`CP5 panel verdict: ${verdict.passed ? "PASS" : "FAIL"} (${verdict.summary})`);
|
|
738
|
+
// Record a failing verdict in the document (do NOT silently drop it)
|
|
739
|
+
if (!verdict.passed) {
|
|
740
|
+
const failNote = [
|
|
741
|
+
"",
|
|
742
|
+
"---",
|
|
743
|
+
"",
|
|
744
|
+
"## Panel Review: FAIL",
|
|
745
|
+
"",
|
|
746
|
+
`**Verdict:** ${verdict.summary}`,
|
|
747
|
+
"",
|
|
748
|
+
"**Failing lens feedback:**",
|
|
749
|
+
"",
|
|
750
|
+
verdict.feedback,
|
|
751
|
+
].join("\n");
|
|
752
|
+
document = document + failNote;
|
|
753
|
+
// Persist the updated document with the FAIL note
|
|
754
|
+
try {
|
|
755
|
+
await saveArchitecture(projectRoot, architectId, document);
|
|
756
|
+
}
|
|
757
|
+
catch (err) {
|
|
758
|
+
logger.warn(`Failed to save document with FAIL note: ${err instanceof Error ? err.message : String(err)}`);
|
|
759
|
+
}
|
|
760
|
+
}
|
|
761
|
+
logger.success(`Architecture saved (panel): ${architectId} (${decisionCount} ADRs, winner: ${winner})`);
|
|
762
|
+
return {
|
|
763
|
+
id: architectId,
|
|
764
|
+
timestamp,
|
|
765
|
+
document,
|
|
766
|
+
adrs,
|
|
767
|
+
componentCount,
|
|
768
|
+
decisionCount,
|
|
769
|
+
lensScores,
|
|
770
|
+
selectedApproach: winner,
|
|
771
|
+
lensReviews: lensReviews.map((r) => ({
|
|
772
|
+
lens: r.evaluator.replace("lens:", ""),
|
|
773
|
+
passed: r.passed,
|
|
774
|
+
summary: r.summary,
|
|
775
|
+
feedback: r.feedback,
|
|
776
|
+
})),
|
|
777
|
+
panelReviewPassed: verdict.passed,
|
|
778
|
+
};
|
|
779
|
+
}
|
|
272
780
|
//# sourceMappingURL=architect-agent.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"architect-agent.js","sourceRoot":"","sources":["../../src/orchestrator/architect-agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"architect-agent.js","sourceRoot":"","sources":["../../src/orchestrator/architect-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ import { graphPipelineLifecycle } from "../graph/pipeline-lifecycle.js";
|
|
|
11
11
|
import { ensureDir } from "../utils/fs.js";
|
|
12
12
|
import { emit } from "../telemetry/emit.js";
|
|
13
13
|
// ── Constants ──────────────────────────────────────────────────────
|
|
14
|
-
const CURATOR_MAX_TURNS =
|
|
14
|
+
const CURATOR_MAX_TURNS = 100;
|
|
15
15
|
// ── Main ───────────────────────────────────────────────────────────
|
|
16
16
|
/**
|
|
17
17
|
* Run the curator agent to produce a Sprint Briefing for a contract.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curator-agent.js","sourceRoot":"","sources":["../../src/orchestrator/curator-agent.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAIpC,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAC;AAE5C,sEAAsE;AAEtE,MAAM,iBAAiB,GAAG,
|
|
1
|
+
{"version":3,"file":"curator-agent.js","sourceRoot":"","sources":["../../src/orchestrator/curator-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,11 +43,11 @@ export declare const ProposedActionSchema: z.ZodObject<{
|
|
|
43
43
|
}, "strip", z.ZodTypeAny, {
|
|
44
44
|
description: string;
|
|
45
45
|
id: string;
|
|
46
|
+
classification: "safe" | "risky";
|
|
46
47
|
inverse: {
|
|
47
48
|
description: string;
|
|
48
49
|
command?: string | undefined;
|
|
49
50
|
};
|
|
50
|
-
classification: "safe" | "risky";
|
|
51
51
|
reasoning: string;
|
|
52
52
|
command?: string | undefined;
|
|
53
53
|
preconditionCheck?: string | undefined;
|
|
@@ -55,11 +55,11 @@ export declare const ProposedActionSchema: z.ZodObject<{
|
|
|
55
55
|
}, {
|
|
56
56
|
description: string;
|
|
57
57
|
id: string;
|
|
58
|
+
classification: "safe" | "risky";
|
|
58
59
|
inverse: {
|
|
59
60
|
description: string;
|
|
60
61
|
command?: string | undefined;
|
|
61
62
|
};
|
|
62
|
-
classification: "safe" | "risky";
|
|
63
63
|
reasoning: string;
|
|
64
64
|
command?: string | undefined;
|
|
65
65
|
preconditionCheck?: string | undefined;
|