@bragi-gmbh/codebus 1.4.0 → 1.6.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/ci-hooks/ci-hooks.js +126 -0
- package/dist/ci-hooks/ci-hooks.js.map +1 -0
- package/dist/commands/agent.js +137 -0
- package/dist/commands/agent.js.map +1 -0
- package/dist/commands/as.js +1 -1
- package/dist/commands/as.js.map +1 -1
- package/dist/commands/ask.js +1 -1
- package/dist/commands/ask.js.map +1 -1
- package/dist/commands/ci-findings.js +129 -0
- package/dist/commands/ci-findings.js.map +1 -0
- package/dist/commands/ci-reply.js +117 -0
- package/dist/commands/ci-reply.js.map +1 -0
- package/dist/commands/ci-steer-escalate.js +65 -0
- package/dist/commands/ci-steer-escalate.js.map +1 -0
- package/dist/commands/cli-mcp-correlation.js +131 -0
- package/dist/commands/cli-mcp-correlation.js.map +1 -0
- package/dist/commands/connector-attach-detach.js +542 -0
- package/dist/commands/connector-attach-detach.js.map +1 -0
- package/dist/commands/connector.js +513 -0
- package/dist/commands/connector.js.map +1 -0
- package/dist/commands/correlation.js +194 -0
- package/dist/commands/correlation.js.map +1 -0
- package/dist/commands/decision.js +63 -0
- package/dist/commands/decision.js.map +1 -1
- package/dist/commands/digest.js +14 -3
- package/dist/commands/digest.js.map +1 -1
- package/dist/commands/do.js +127 -0
- package/dist/commands/do.js.map +1 -0
- package/dist/commands/factory-attention.js +106 -0
- package/dist/commands/factory-attention.js.map +1 -0
- package/dist/commands/factory-context-read.js +171 -0
- package/dist/commands/factory-context-read.js.map +1 -0
- package/dist/commands/factory-interventions.js +102 -0
- package/dist/commands/factory-interventions.js.map +1 -0
- package/dist/commands/factory.js +187 -0
- package/dist/commands/factory.js.map +1 -1
- package/dist/commands/graph-pull.js +130 -0
- package/dist/commands/graph-pull.js.map +1 -0
- package/dist/commands/graph.js +5 -1
- package/dist/commands/graph.js.map +1 -1
- package/dist/commands/inbox.js +7 -7
- package/dist/commands/inbox.js.map +1 -1
- package/dist/commands/ingest.js +1 -1
- package/dist/commands/ingest.js.map +1 -1
- package/dist/commands/install.js +1160 -55
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/integration-ledger.js +81 -0
- package/dist/commands/integration-ledger.js.map +1 -0
- package/dist/commands/knowledge.js +178 -0
- package/dist/commands/knowledge.js.map +1 -0
- package/dist/commands/links.js +1 -1
- package/dist/commands/links.js.map +1 -1
- package/dist/commands/morning.js +50 -1
- package/dist/commands/morning.js.map +1 -1
- package/dist/commands/plan-compiler.js +260 -0
- package/dist/commands/plan-compiler.js.map +1 -0
- package/dist/commands/plan-lint.js +275 -0
- package/dist/commands/plan-lint.js.map +1 -0
- package/dist/commands/plan-score.js +203 -0
- package/dist/commands/plan-score.js.map +1 -0
- package/dist/commands/plan.js +481 -15
- package/dist/commands/plan.js.map +1 -1
- package/dist/commands/product-validity.js +168 -0
- package/dist/commands/product-validity.js.map +1 -0
- package/dist/commands/question.js +1 -1
- package/dist/commands/question.js.map +1 -1
- package/dist/commands/read-policy.js +131 -0
- package/dist/commands/read-policy.js.map +1 -0
- package/dist/commands/read.js +1 -1
- package/dist/commands/read.js.map +1 -1
- package/dist/commands/repo.js +106 -8
- package/dist/commands/repo.js.map +1 -1
- package/dist/commands/repository-protection.js +209 -0
- package/dist/commands/repository-protection.js.map +1 -0
- package/dist/commands/resolve.js +2 -2
- package/dist/commands/resolve.js.map +1 -1
- package/dist/commands/self-healing.js +26 -0
- package/dist/commands/self-healing.js.map +1 -0
- package/dist/commands/send.js +1 -1
- package/dist/commands/send.js.map +1 -1
- package/dist/commands/serial-merge.js +303 -0
- package/dist/commands/serial-merge.js.map +1 -0
- package/dist/commands/session.js +1 -1
- package/dist/commands/session.js.map +1 -1
- package/dist/commands/task.js +92 -1
- package/dist/commands/task.js.map +1 -1
- package/dist/commands/verify.js +77 -0
- package/dist/commands/verify.js.map +1 -0
- package/dist/config/self-healing-analysis.json +158 -0
- package/dist/errors.js +18 -4
- package/dist/errors.js.map +1 -1
- package/dist/execution/client.js +53 -0
- package/dist/execution/client.js.map +1 -0
- package/dist/execution/local.js +24 -0
- package/dist/execution/local.js.map +1 -0
- package/dist/execution/ssh.js +38 -0
- package/dist/execution/ssh.js.map +1 -0
- package/dist/graph.js +78 -16
- package/dist/graph.js.map +1 -1
- package/dist/index.js +30 -0
- package/dist/index.js.map +1 -1
- package/dist/json-lite.js +248 -0
- package/dist/json-lite.js.map +1 -0
- package/dist/knowledge-drift.js +40 -0
- package/dist/knowledge-drift.js.map +1 -0
- package/dist/lint/parallelism.js +414 -0
- package/dist/lint/parallelism.js.map +1 -0
- package/dist/mail-latency.js +11 -1
- package/dist/mail-latency.js.map +1 -1
- package/dist/mcp-ci-findings.js +31 -0
- package/dist/mcp-ci-findings.js.map +1 -0
- package/dist/mcp-correlation.js +290 -0
- package/dist/mcp-correlation.js.map +1 -0
- package/dist/mcp-factory-context-read.js +81 -0
- package/dist/mcp-factory-context-read.js.map +1 -0
- package/dist/mcp-registry.js +128 -1
- package/dist/mcp-registry.js.map +1 -1
- package/dist/mcp.js +94 -5
- package/dist/mcp.js.map +1 -1
- package/dist/openrouter-reservation-guard.js +97 -0
- package/dist/openrouter-reservation-guard.js.map +1 -0
- package/dist/self-healing-analysis-loader.js +150 -0
- package/dist/self-healing-analysis-loader.js.map +1 -0
- package/dist/sender.js +11 -9
- package/dist/sender.js.map +1 -1
- package/dist/toml-lite.js +546 -0
- package/dist/toml-lite.js.map +1 -0
- package/dist/version-check.js +23 -7
- package/dist/version-check.js.map +1 -1
- package/package.json +5 -3
package/dist/mcp-registry.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-registry.js","sourceRoot":"","sources":["../src/mcp-registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mcp-registry.js","sourceRoot":"","sources":["../src/mcp-registry.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp.js
CHANGED
|
@@ -16,10 +16,14 @@
|
|
|
16
16
|
* the stdio transport + dispatch + entry point.
|
|
17
17
|
*/
|
|
18
18
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
19
|
+
import { createRequire } from "node:module";
|
|
19
20
|
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
|
|
20
21
|
import { ListToolsRequestSchema, CallToolRequestSchema, } from "@modelcontextprotocol/sdk/types.js";
|
|
21
22
|
import { TOOL_REGISTRY, askGraphHandler } from "./mcp-registry.js";
|
|
22
23
|
import { ACT_DIRECTIVE_CORE, FYI_DIRECTIVE_CORE, isActionableMessage } from "./directives.js";
|
|
24
|
+
import { validateCorrelationEnvelope } from "./commands/correlation.js";
|
|
25
|
+
const require = createRequire(import.meta.url);
|
|
26
|
+
export const SERVER_INFO = { name: "codebus", version: require("../package.json").version };
|
|
23
27
|
// ── Tool dispatch ──────────────────────────────────────────────────────────
|
|
24
28
|
// codebus_inbox is a mail-delivery surface (SERVER_INSTRUCTIONS says "reply to
|
|
25
29
|
// mail addressed to you"), but that instruction lives only in the one-time
|
|
@@ -50,12 +54,47 @@ export function needsFyiDirective(toolName, result) {
|
|
|
50
54
|
&& result.some((m) => m?.read === "unread")
|
|
51
55
|
&& !needsActDirective(toolName, result);
|
|
52
56
|
}
|
|
57
|
+
/**
|
|
58
|
+
* Build the _correlation property descriptor for MCP tool input schemas.
|
|
59
|
+
* T-01 traceability: every MCP event carries run_id, actor, and environment.
|
|
60
|
+
* The envelope is optional on the tool argument but, when present, MUST be
|
|
61
|
+
* validated before the handler runs.
|
|
62
|
+
*/
|
|
63
|
+
export const CORRELATION_SCHEMA = {
|
|
64
|
+
type: "object",
|
|
65
|
+
description: "T-01 correlation chain envelope. When present, validated before dispatch. Requires: actor (GitHub login), environment ('dev'|'prod'), transport ('cli'|'mcp'). Optional: plan_id, stage_id, child_id, binding_id, run_id, jira_key, pr_url, receipt_id.",
|
|
66
|
+
properties: {
|
|
67
|
+
actor: { type: "string", description: "GitHub login (people.github_login)" },
|
|
68
|
+
environment: { type: "string", enum: ["dev", "prod"] },
|
|
69
|
+
transport: { type: "string", enum: ["cli", "mcp"] },
|
|
70
|
+
plan_id: { type: "string" },
|
|
71
|
+
stage_id: { type: "string" },
|
|
72
|
+
child_id: { type: "string" },
|
|
73
|
+
binding_id: { type: "string" },
|
|
74
|
+
run_id: { type: "string" },
|
|
75
|
+
jira_key: { type: "string" },
|
|
76
|
+
pr_url: { type: "string" },
|
|
77
|
+
receipt_id: { type: "string" },
|
|
78
|
+
},
|
|
79
|
+
required: ["actor", "environment", "transport"],
|
|
80
|
+
};
|
|
53
81
|
/**
|
|
54
82
|
* Generic tool handler dispatcher.
|
|
55
83
|
* Exported for testing.
|
|
84
|
+
*
|
|
85
|
+
* The MCP SDK's setRequestHandler invokes this with (request, extra) where
|
|
86
|
+
* extra is the SDK's internal request context — NOT a correlation envelope.
|
|
87
|
+
* Correlation is extracted ONLY from request.params.arguments._correlation,
|
|
88
|
+
* which is the property real MCP clients send. The extra parameter is ignored.
|
|
89
|
+
*
|
|
90
|
+
* When _correlation is present in the tool arguments, it is validated with
|
|
91
|
+
* validateCorrelationEnvelope before the handler runs (negative-fixture:
|
|
92
|
+
* incomplete envelopes raise CorrelationError and never reach the handler).
|
|
93
|
+
* The validated envelope is attached to callArgs._correlation so registered
|
|
94
|
+
* handlers can read it for T-01 traceability (run_id, actor, environment).
|
|
56
95
|
*/
|
|
57
96
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
58
|
-
export async function handleToolCall(request) {
|
|
97
|
+
export async function handleToolCall(request, _extra, correlationOverride) {
|
|
59
98
|
const { name, arguments: args } = request.params;
|
|
60
99
|
const tool = TOOL_REGISTRY.find((t) => t.name === name);
|
|
61
100
|
if (!tool) {
|
|
@@ -70,8 +109,31 @@ export async function handleToolCall(request) {
|
|
|
70
109
|
};
|
|
71
110
|
}
|
|
72
111
|
try {
|
|
73
|
-
|
|
112
|
+
// Thread correlation through: attach envelope to handler args when present.
|
|
113
|
+
// Production path: _correlation comes from request.params.arguments._correlation
|
|
114
|
+
// (MCP clients send it as a regular tool argument). The correlationOverride
|
|
115
|
+
// parameter is for unit testing only.
|
|
116
|
+
// Negative-fixture behavior: if a correlation envelope is supplied but
|
|
117
|
+
// actor/environment/transport is missing, raise a typed error — never
|
|
118
|
+
// silently pass through.
|
|
119
|
+
let callArgs = args || {};
|
|
120
|
+
const correlation = correlationOverride || callArgs._correlation;
|
|
121
|
+
if (correlation !== undefined && correlation !== null) {
|
|
122
|
+
validateCorrelationEnvelope(correlation);
|
|
123
|
+
callArgs = { ...callArgs, _correlation: correlation };
|
|
124
|
+
}
|
|
125
|
+
const result = await tool.handler(callArgs);
|
|
74
126
|
const content = [{ type: "text", text: JSON.stringify(result, null, 2) }];
|
|
127
|
+
// T-01 traceability: when a correlation envelope was provided, emit a
|
|
128
|
+
// structured metadata block so MCP clients can observe that the chain
|
|
129
|
+
// was received and validated, even when the downstream handler does not
|
|
130
|
+
// itself forward the envelope to CodeBus events/logging.
|
|
131
|
+
if (correlation) {
|
|
132
|
+
content.push({
|
|
133
|
+
type: "text",
|
|
134
|
+
text: JSON.stringify({ _t01_correlation: { validated: true, run_id: correlation.run_id, actor: correlation.actor, environment: correlation.environment } }, null, 2),
|
|
135
|
+
});
|
|
136
|
+
}
|
|
75
137
|
if (needsActDirective(name, result))
|
|
76
138
|
content.push({ type: "text", text: ACT_DIRECTIVE_CORE });
|
|
77
139
|
else if (needsFyiDirective(name, result))
|
|
@@ -133,6 +195,19 @@ export async function handleAskGraphCall(request) {
|
|
|
133
195
|
};
|
|
134
196
|
}
|
|
135
197
|
}
|
|
198
|
+
/** Add the `_correlation` property to a tool's inputSchema, preserving existing properties. */
|
|
199
|
+
export function addCorrelationToSchema(schema) {
|
|
200
|
+
schema.properties = schema.properties || {};
|
|
201
|
+
schema.properties._correlation = CORRELATION_SCHEMA;
|
|
202
|
+
}
|
|
203
|
+
/**
|
|
204
|
+
* Augment every tool's inputSchema with the optional _correlation property.
|
|
205
|
+
* This is applied at server boot so the TOOL_REGISTRY in mcp-registry.ts
|
|
206
|
+
* stays pure (side-effect-free, per F1).
|
|
207
|
+
*/
|
|
208
|
+
export function withCorrelationProperty(tool) {
|
|
209
|
+
addCorrelationToSchema(tool.inputSchema);
|
|
210
|
+
}
|
|
136
211
|
// ── Server instructions ────────────────────────────────────────────────────
|
|
137
212
|
// Injected into the model's context when the server attaches (MCP initialize
|
|
138
213
|
// result → client system prompt). This is the auto-orientation channel: the
|
|
@@ -153,19 +228,30 @@ export const SERVER_INSTRUCTIONS = [
|
|
|
153
228
|
"- When unsure what matters most, call codebus_next.",
|
|
154
229
|
"- Record durable outcomes on the bus: task_done with evidence, decision_record for choices others must honor.",
|
|
155
230
|
"- Before stopping mid-work, post a handoff with session_end.",
|
|
231
|
+
"",
|
|
232
|
+
"T-01 traceability: optional _correlation on every tool argument carries the " +
|
|
233
|
+
"plan/stage/child/binding/run/actor/environment chain. When present, it is " +
|
|
234
|
+
"validated before the handler runs and echoed back in a _t01_correlation " +
|
|
235
|
+
"metadata block in the result.",
|
|
156
236
|
].join("\n");
|
|
157
237
|
/**
|
|
158
238
|
* Initialize and run the MCP server.
|
|
159
239
|
* Exported for testing.
|
|
160
240
|
*/
|
|
161
241
|
export async function main() {
|
|
242
|
+
// Wire _correlation into every tool schema so MCP clients can discover and
|
|
243
|
+
// send the T-01 correlation envelope. Done at boot (not in mcp-registry.ts)
|
|
244
|
+
// to keep that module side-effect-free (F1).
|
|
245
|
+
for (const tool of TOOL_REGISTRY) {
|
|
246
|
+
withCorrelationProperty(tool);
|
|
247
|
+
}
|
|
162
248
|
// Declare the tools capability — the SDK rejects tools/list handlers
|
|
163
249
|
// ("Server does not support tools") unless capabilities.tools is set.
|
|
164
250
|
// `instructions` rides the initialize result (ServerOptions.instructions,
|
|
165
251
|
// @modelcontextprotocol/sdk server/index.d.ts) — the client injects it into
|
|
166
252
|
// the model's context on attach, which is what makes adding the server to a
|
|
167
253
|
// conversation self-orienting.
|
|
168
|
-
const server = new Server(
|
|
254
|
+
const server = new Server(SERVER_INFO, { capabilities: { tools: {} }, instructions: SERVER_INSTRUCTIONS });
|
|
169
255
|
// Register the tools list. The SDK reads the method literal off the request
|
|
170
256
|
// schema, so we must pass ListToolsRequestSchema — a bare "tools/list" string
|
|
171
257
|
// throws "Schema is missing a method literal" and the server never boots.
|
|
@@ -176,8 +262,11 @@ export async function main() {
|
|
|
176
262
|
inputSchema: tool.inputSchema,
|
|
177
263
|
})),
|
|
178
264
|
}));
|
|
179
|
-
// Handle tool calls
|
|
180
|
-
|
|
265
|
+
// Handle tool calls. The SDK invokes this handler with (request, extra)
|
|
266
|
+
// where extra is the SDK's internal request context — NOT a correlation
|
|
267
|
+
// envelope. We wrap in an adapter that passes only request, making the
|
|
268
|
+
// contract explicit: correlation is read from request.params.arguments._correlation.
|
|
269
|
+
server.setRequestHandler(CallToolRequestSchema, (_request, extra) => handleToolCall(_request, extra));
|
|
181
270
|
// Start the server
|
|
182
271
|
const transport = new StdioServerTransport();
|
|
183
272
|
await server.connect(transport);
|
package/dist/mcp.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EACL,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenRouter atomic reservation guard: validates person/plan/stage/child/provider/model/amount
|
|
3
|
+
* before a spend execution reserves capacity.
|
|
4
|
+
*
|
|
5
|
+
* Principles:
|
|
6
|
+
* 1. Unknown fields must be explicitly validated (ADR standing rule: validate null/absent fields)
|
|
7
|
+
* 2. No unbounded accumulation without finiteness checks (max 999.99 USD per reservation)
|
|
8
|
+
* 3. Idempotency: same external_run_id returns prior reservation, not error
|
|
9
|
+
* 4. Binding: plan/stage/child tuple must exist and plan must be executable
|
|
10
|
+
* 5. Caps: person/plan caps are read server-side; only valid caps allow reserve
|
|
11
|
+
*
|
|
12
|
+
* On success, returns a reservation ID. On failure, returns an error with
|
|
13
|
+
* authority chain (caps decision ID or "default caps").
|
|
14
|
+
*/
|
|
15
|
+
const KNOWN_PROVIDERS = new Set(["openrouter", "anthropic", "openai", "deepseek"]);
|
|
16
|
+
const MAX_RESERVATION_USD = 999.99;
|
|
17
|
+
const UUID_V4_RE = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
|
|
18
|
+
/**
|
|
19
|
+
* Validates a reservation request BEFORE sending to the database.
|
|
20
|
+
* This is a client-side guard; server-side functions enforce the same rules.
|
|
21
|
+
*/
|
|
22
|
+
export function validateReservationRequest(req) {
|
|
23
|
+
if (!req.plan_revision_id || typeof req.plan_revision_id !== "string" || !UUID_V4_RE.test(req.plan_revision_id.trim())) {
|
|
24
|
+
return { ok: false, reason: "plan_revision_id is required and must be a valid UUID v4 string" };
|
|
25
|
+
}
|
|
26
|
+
if (!req.stage_id || typeof req.stage_id !== "string" || !req.stage_id.trim()) {
|
|
27
|
+
return { ok: false, reason: "stage_id is required and must be a non-empty string" };
|
|
28
|
+
}
|
|
29
|
+
if (!req.child_id || typeof req.child_id !== "string" || !req.child_id.trim()) {
|
|
30
|
+
return { ok: false, reason: "child_id is required and must be a non-empty string" };
|
|
31
|
+
}
|
|
32
|
+
if (!req.provider || typeof req.provider !== "string" || !req.provider.trim()) {
|
|
33
|
+
return { ok: false, reason: "provider is required and must be a non-empty string" };
|
|
34
|
+
}
|
|
35
|
+
if (!req.model || typeof req.model !== "string" || !req.model.trim()) {
|
|
36
|
+
return { ok: false, reason: "model is required and must be a non-empty string" };
|
|
37
|
+
}
|
|
38
|
+
// Finiteness check FIRST: Number.isFinite() rejects NaN, Infinity, and -Infinity
|
|
39
|
+
if (!Number.isFinite(req.requested_usd)) {
|
|
40
|
+
return { ok: false, reason: `requested_usd must be a finite number, got ${req.requested_usd}` };
|
|
41
|
+
}
|
|
42
|
+
if (req.requested_usd <= 0) {
|
|
43
|
+
return { ok: false, reason: `requested_usd must be greater than 0, got ${req.requested_usd}` };
|
|
44
|
+
}
|
|
45
|
+
if (req.requested_usd > MAX_RESERVATION_USD) {
|
|
46
|
+
return { ok: false, reason: `requested_usd must not exceed ${MAX_RESERVATION_USD}, got ${req.requested_usd}` };
|
|
47
|
+
}
|
|
48
|
+
if (req.external_run_id !== undefined && (typeof req.external_run_id !== "string" || !req.external_run_id.trim())) {
|
|
49
|
+
return { ok: false, reason: "external_run_id, if provided, must be a non-empty string" };
|
|
50
|
+
}
|
|
51
|
+
// Wire in provider/model validation (never silently drop unknown identifiers)
|
|
52
|
+
const pmResult = validateProviderModel(req.provider, req.model);
|
|
53
|
+
if (!pmResult.ok) {
|
|
54
|
+
return pmResult;
|
|
55
|
+
}
|
|
56
|
+
return { ok: true };
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Guard rule: never silently drop unknown provider/model values.
|
|
60
|
+
* Reject unknown providers; model must be non-empty.
|
|
61
|
+
*/
|
|
62
|
+
export function validateProviderModel(provider, model) {
|
|
63
|
+
const trimmedProvider = provider.toLowerCase().trim();
|
|
64
|
+
if (!KNOWN_PROVIDERS.has(trimmedProvider)) {
|
|
65
|
+
return { ok: false, reason: `unknown provider '${provider}'; expected one of: ${Array.from(KNOWN_PROVIDERS).join(", ")}` };
|
|
66
|
+
}
|
|
67
|
+
const trimmedModel = model.trim();
|
|
68
|
+
if (!trimmedModel) {
|
|
69
|
+
return { ok: false, reason: "model must not be empty after trimming" };
|
|
70
|
+
}
|
|
71
|
+
return { ok: true };
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Checks if a reservation amount combined with existing reservations
|
|
75
|
+
* would exceed plan capacity. Client-side advisory check only; the server
|
|
76
|
+
* enforces hard limits.
|
|
77
|
+
*/
|
|
78
|
+
export function checkReservationCapacity(requestedUsd, totalReservedUsd, planCapUsd) {
|
|
79
|
+
if (!Number.isFinite(requestedUsd) || requestedUsd <= 0) {
|
|
80
|
+
return { ok: false, reason: "requestedUsd must be a finite number > 0" };
|
|
81
|
+
}
|
|
82
|
+
if (!Number.isFinite(totalReservedUsd) || totalReservedUsd < 0) {
|
|
83
|
+
return { ok: false, reason: "totalReservedUsd must be a finite number >= 0" };
|
|
84
|
+
}
|
|
85
|
+
if (!Number.isFinite(planCapUsd) || planCapUsd < 0) {
|
|
86
|
+
return { ok: false, reason: "planCapUsd must be a finite number >= 0" };
|
|
87
|
+
}
|
|
88
|
+
const remaining = planCapUsd - totalReservedUsd;
|
|
89
|
+
if (remaining < requestedUsd) {
|
|
90
|
+
return {
|
|
91
|
+
ok: false,
|
|
92
|
+
reason: `insufficient reserve: requested ${requestedUsd}, but only ${remaining} USD remains in the plan cap (total reserved ${totalReservedUsd} of ${planCapUsd})`,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
return { ok: true };
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=openrouter-reservation-guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"openrouter-reservation-guard.js","sourceRoot":"","sources":["../src/openrouter-reservation-guard.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AA6BH,MAAM,eAAe,GAAG,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,CAAC;AACnF,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAEnC,MAAM,UAAU,GAAG,iEAAiE,CAAC;AAErF;;;GAGG;AACH,MAAM,UAAU,0BAA0B,CAAC,GAAiC;IAC1E,IAAI,CAAC,GAAG,CAAC,gBAAgB,IAAI,OAAO,GAAG,CAAC,gBAAgB,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QACvH,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iEAAiE,EAAE,CAAC;IAClG,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qDAAqD,EAAE,CAAC;IACtF,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qDAAqD,EAAE,CAAC;IACtF,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,QAAQ,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;QAC9E,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qDAAqD,EAAE,CAAC;IACtF,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,KAAK,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QACrE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,kDAAkD,EAAE,CAAC;IACnF,CAAC;IAED,iFAAiF;IACjF,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;QACxC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,8CAA8C,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC;IAClG,CAAC;IAED,IAAI,GAAG,CAAC,aAAa,IAAI,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,6CAA6C,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC;IACjG,CAAC;IAED,IAAI,GAAG,CAAC,aAAa,GAAG,mBAAmB,EAAE,CAAC;QAC5C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,iCAAiC,mBAAmB,SAAS,GAAG,CAAC,aAAa,EAAE,EAAE,CAAC;IACjH,CAAC;IAED,IAAI,GAAG,CAAC,eAAe,KAAK,SAAS,IAAI,CAAC,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;QAClH,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,0DAA0D,EAAE,CAAC;IAC3F,CAAC;IAED,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC;IAChE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAgB,EAAE,KAAa;IACnE,MAAM,eAAe,GAAG,QAAQ,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;IAEtD,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,eAAe,CAAC,EAAE,CAAC;QAC1C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,QAAQ,uBAAuB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;IAC7H,CAAC;IAED,MAAM,YAAY,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAClC,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,wCAAwC,EAAE,CAAC;IACzE,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,wBAAwB,CACtC,YAAoB,EACpB,gBAAwB,EACxB,UAAkB;IAElB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;QACxD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,0CAA0C,EAAE,CAAC;IAC3E,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAC,IAAI,gBAAgB,GAAG,CAAC,EAAE,CAAC;QAC/D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,+CAA+C,EAAE,CAAC;IAChF,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,yCAAyC,EAAE,CAAC;IAC1E,CAAC;IAED,MAAM,SAAS,GAAG,UAAU,GAAG,gBAAgB,CAAC;IAEhD,IAAI,SAAS,GAAG,YAAY,EAAE,CAAC;QAC7B,OAAO;YACL,EAAE,EAAE,KAAK;YACT,MAAM,EAAE,mCAAmC,YAAY,cAAc,SAAS,gDAAgD,gBAAgB,OAAO,UAAU,GAAG;SACnK,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AACtB,CAAC"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Self-healing analysis configuration loader
|
|
3
|
+
* Phase 2 v16 implementation
|
|
4
|
+
*
|
|
5
|
+
* This loader reads and validates the self-healing-analysis.json configuration
|
|
6
|
+
* and provides an interface for the self-healing flow (analyzer -> ticket -> fixer)
|
|
7
|
+
* to query the three-model analysis setup and execute with the specified
|
|
8
|
+
* maximum-context approach.
|
|
9
|
+
*/
|
|
10
|
+
import * as fs from "fs";
|
|
11
|
+
import * as path from "path";
|
|
12
|
+
import { fileURLToPath } from "url";
|
|
13
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
14
|
+
const __dirname = path.dirname(__filename);
|
|
15
|
+
/**
|
|
16
|
+
* Loads and validates the self-healing analysis configuration
|
|
17
|
+
* Configuration is shipped with the CLI package at dist/config/
|
|
18
|
+
* In development, reads from the source directory
|
|
19
|
+
* @returns The validated configuration object
|
|
20
|
+
* @throws Error if configuration is invalid or missing required fields
|
|
21
|
+
*/
|
|
22
|
+
export function loadSelfHealingAnalysisConfig() {
|
|
23
|
+
// Try multiple paths to support both development and built package scenarios
|
|
24
|
+
const candidates = [
|
|
25
|
+
// In built package: dist/self-healing-analysis-loader.js -> dist/config/
|
|
26
|
+
path.join(__dirname, "config", "self-healing-analysis.json"),
|
|
27
|
+
// In development/testing: src/self-healing-analysis-loader.ts -> ../../docs/...
|
|
28
|
+
path.join(__dirname, "..", "..", "docs", "factory", "phase2", "v16", "self-healing-analysis.json"),
|
|
29
|
+
];
|
|
30
|
+
let configPath = null;
|
|
31
|
+
for (const candidate of candidates) {
|
|
32
|
+
if (fs.existsSync(candidate)) {
|
|
33
|
+
configPath = candidate;
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
if (!configPath) {
|
|
38
|
+
throw new Error(`Self-healing analysis configuration not found. Tried:\n${candidates.map(c => ` - ${c}`).join("\n")}`);
|
|
39
|
+
}
|
|
40
|
+
const configContent = fs.readFileSync(configPath, "utf-8");
|
|
41
|
+
const config = JSON.parse(configContent);
|
|
42
|
+
// Validate schema constraints
|
|
43
|
+
validateConfiguration(config);
|
|
44
|
+
return config;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Validates configuration against schema constraints
|
|
48
|
+
* @param config The configuration to validate
|
|
49
|
+
* @throws Error if validation fails
|
|
50
|
+
*/
|
|
51
|
+
export function validateConfiguration(config) {
|
|
52
|
+
const errors = [];
|
|
53
|
+
// Model set constraints
|
|
54
|
+
if (!config.analysis_configuration?.model_set?.models) {
|
|
55
|
+
errors.push("missing models array");
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
if (config.analysis_configuration.model_set.count !== 3) {
|
|
59
|
+
errors.push("count is not 3");
|
|
60
|
+
}
|
|
61
|
+
if (config.analysis_configuration.model_set.models.length !== 3) {
|
|
62
|
+
errors.push("models array length is not 3");
|
|
63
|
+
}
|
|
64
|
+
if (config.analysis_configuration.model_set.count !==
|
|
65
|
+
config.analysis_configuration.model_set.models.length) {
|
|
66
|
+
errors.push("count does not match models.length");
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
// Context model validation
|
|
70
|
+
if (config.analysis_configuration?.model_set?.models) {
|
|
71
|
+
config.analysis_configuration.model_set.models.forEach((m, i) => {
|
|
72
|
+
if (m.context_model !== "maximum") {
|
|
73
|
+
errors.push(`model[${i}] context_model is not maximum`);
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
// Required roles
|
|
78
|
+
const roles = config.analysis_configuration?.model_set?.models?.map((m) => m.role) || [];
|
|
79
|
+
if (!roles.includes("reasoning"))
|
|
80
|
+
errors.push("missing reasoning role");
|
|
81
|
+
if (!roles.includes("research"))
|
|
82
|
+
errors.push("missing research role");
|
|
83
|
+
if (!roles.includes("executor"))
|
|
84
|
+
errors.push("missing executor role");
|
|
85
|
+
// Context components
|
|
86
|
+
const componentNames = config.analysis_configuration?.context_handling?.components?.map((c) => c.name) || [];
|
|
87
|
+
if (!componentNames.includes("source_evidence"))
|
|
88
|
+
errors.push("missing source_evidence component");
|
|
89
|
+
if (!componentNames.includes("repository_context"))
|
|
90
|
+
errors.push("missing repository_context component");
|
|
91
|
+
if (!componentNames.includes("codebus_context"))
|
|
92
|
+
errors.push("missing codebus_context component");
|
|
93
|
+
if (!componentNames.includes("factory_context"))
|
|
94
|
+
errors.push("missing factory_context component");
|
|
95
|
+
// Analysis stages
|
|
96
|
+
const stageKeys = Object.keys(config.analysis_configuration?.analysis_stages || {});
|
|
97
|
+
if (!stageKeys.includes("stage_1_evidence_collection"))
|
|
98
|
+
errors.push("missing stage_1_evidence_collection");
|
|
99
|
+
if (!stageKeys.includes("stage_2_pattern_analysis"))
|
|
100
|
+
errors.push("missing stage_2_pattern_analysis");
|
|
101
|
+
if (!stageKeys.includes("stage_3_repair_strategy"))
|
|
102
|
+
errors.push("missing stage_3_repair_strategy");
|
|
103
|
+
if (!stageKeys.includes("stage_4_implementation"))
|
|
104
|
+
errors.push("missing stage_4_implementation");
|
|
105
|
+
// Stage responsibilities
|
|
106
|
+
stageKeys.forEach((key) => {
|
|
107
|
+
const stage = config.analysis_configuration.analysis_stages[key];
|
|
108
|
+
if (!stage.responsible || !Array.isArray(stage.responsible) || stage.responsible.length === 0) {
|
|
109
|
+
errors.push(`${key} has no responsible models`);
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
// Output format
|
|
113
|
+
if (!config.output_format?.analysis_record?.analysis_by_model?.reasoning)
|
|
114
|
+
errors.push("missing analysis_by_model.reasoning");
|
|
115
|
+
if (!config.output_format?.analysis_record?.analysis_by_model?.research)
|
|
116
|
+
errors.push("missing analysis_by_model.research");
|
|
117
|
+
if (!config.output_format?.analysis_record?.analysis_by_model?.executor)
|
|
118
|
+
errors.push("missing analysis_by_model.executor");
|
|
119
|
+
// Escalation is boolean
|
|
120
|
+
if (typeof config.output_format?.analysis_record?.escalation_required !== "boolean") {
|
|
121
|
+
errors.push("escalation_required is not boolean");
|
|
122
|
+
}
|
|
123
|
+
if (errors.length > 0) {
|
|
124
|
+
throw new Error(`Configuration validation failed:\n${errors.map(e => ` - ${e}`).join("\n")}`);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Gets the three-model set from configuration
|
|
129
|
+
* @param config The loaded configuration
|
|
130
|
+
* @returns Array of three models (reasoning, research, executor)
|
|
131
|
+
*/
|
|
132
|
+
export function getModelSet(config) {
|
|
133
|
+
return config.analysis_configuration.model_set.models;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Gets analysis stages ordered by execution sequence
|
|
137
|
+
* @param config The loaded configuration
|
|
138
|
+
* @returns Ordered analysis stages
|
|
139
|
+
*/
|
|
140
|
+
export function getAnalysisStages(config) {
|
|
141
|
+
const stages = config.analysis_configuration.analysis_stages;
|
|
142
|
+
const order = [
|
|
143
|
+
"stage_1_evidence_collection",
|
|
144
|
+
"stage_2_pattern_analysis",
|
|
145
|
+
"stage_3_repair_strategy",
|
|
146
|
+
"stage_4_implementation",
|
|
147
|
+
];
|
|
148
|
+
return order.map(key => ({ ...stages[key] }));
|
|
149
|
+
}
|
|
150
|
+
//# sourceMappingURL=self-healing-analysis-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"self-healing-analysis-loader.js","sourceRoot":"","sources":["../src/self-healing-analysis-loader.ts"],"names":[],"mappings":"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"}
|