prismalens 0.1.1 → 0.3.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/README.md +68 -20
- package/dist/bin/prismalens.js +24 -10
- package/dist/bin/prismalens.js.map +1 -1
- package/dist/src/cli/auth.d.ts +3 -0
- package/dist/src/cli/auth.d.ts.map +1 -0
- package/dist/src/cli/auth.js +108 -0
- package/dist/src/cli/auth.js.map +1 -0
- package/dist/src/cli/doctor.d.ts +1 -0
- package/dist/src/cli/doctor.d.ts.map +1 -1
- package/dist/src/cli/doctor.js +3 -3
- package/dist/src/cli/doctor.js.map +1 -1
- package/dist/src/cli/flags.d.ts.map +1 -1
- package/dist/src/cli/flags.js +7 -0
- package/dist/src/cli/flags.js.map +1 -1
- package/dist/src/cli/init.d.ts.map +1 -1
- package/dist/src/cli/init.js +7 -6
- package/dist/src/cli/init.js.map +1 -1
- package/dist/src/cli/investigate.d.ts.map +1 -1
- package/dist/src/cli/investigate.js +13 -12
- package/dist/src/cli/investigate.js.map +1 -1
- package/dist/src/cli/listen.d.ts +6 -0
- package/dist/src/cli/listen.d.ts.map +1 -1
- package/dist/src/cli/listen.js +13 -6
- package/dist/src/cli/listen.js.map +1 -1
- package/dist/src/cli/report.d.ts +7 -2
- package/dist/src/cli/report.d.ts.map +1 -1
- package/dist/src/cli/report.js +17 -4
- package/dist/src/cli/report.js.map +1 -1
- package/dist/src/cli/serve.js +1 -1
- package/dist/src/cli/serve.js.map +1 -1
- package/dist/src/cli/status.d.ts +7 -2
- package/dist/src/cli/status.d.ts.map +1 -1
- package/dist/src/cli/status.js +14 -4
- package/dist/src/cli/status.js.map +1 -1
- package/dist/src/config/loader.d.ts.map +1 -1
- package/dist/src/config/loader.js +24 -10
- package/dist/src/config/loader.js.map +1 -1
- package/dist/src/config/schema.d.ts +40 -32
- package/dist/src/config/schema.d.ts.map +1 -1
- package/dist/src/config/schema.js +25 -12
- package/dist/src/config/schema.js.map +1 -1
- package/dist/src/core/parse-stdin.d.ts.map +1 -1
- package/dist/src/core/parse-stdin.js +3 -12
- package/dist/src/core/parse-stdin.js.map +1 -1
- package/dist/src/core/run-investigation.js +10 -8
- package/dist/src/core/run-investigation.js.map +1 -1
- package/dist/src/core/session.js +3 -3
- package/dist/src/core/session.js.map +1 -1
- package/dist/src/http/server.d.ts +5 -0
- package/dist/src/http/server.d.ts.map +1 -1
- package/dist/src/http/server.js +14 -1
- package/dist/src/http/server.js.map +1 -1
- package/dist/src/jsonrpc/server.d.ts +29 -0
- package/dist/src/jsonrpc/server.d.ts.map +1 -1
- package/dist/src/jsonrpc/server.js +34 -11
- package/dist/src/jsonrpc/server.js.map +1 -1
- package/package.json +4 -4
|
@@ -51,10 +51,11 @@ export declare const AgentLimitsConfigSchema: z.ZodObject<{
|
|
|
51
51
|
export declare const AgentConfigSchema: z.ZodObject<{
|
|
52
52
|
default: z.ZodDefault<z.ZodEnum<["deepagents", "claude-code", "codex"]>>;
|
|
53
53
|
/**
|
|
54
|
-
* BARE model id (e.g. "gpt-oss:120b")
|
|
55
|
-
* provider prefix (ADR-0017: deepagents prepends
|
|
56
|
-
*
|
|
57
|
-
*
|
|
54
|
+
* BARE model id (e.g. "gpt-oss:120b") for the Tier-2 HARNESS ONLY — the chosen
|
|
55
|
+
* harness applies its own provider prefix (ADR-0017: deepagents prepends
|
|
56
|
+
* "openai:"; Claude Code takes it bare). Omit to let the harness pick its own
|
|
57
|
+
* default. The Tier-1 reduce model is a SEPARATE knob — `synth.model` (ADR-0013/
|
|
58
|
+
* 0016): the two calls go to different providers, so one key must never feed both.
|
|
58
59
|
*/
|
|
59
60
|
model: z.ZodOptional<z.ZodString>;
|
|
60
61
|
/** The posture dial (ADR-0017). Defaults to `read-only`. */
|
|
@@ -109,11 +110,11 @@ export declare const AgentConfigSchema: z.ZodObject<{
|
|
|
109
110
|
max_turns?: number | undefined;
|
|
110
111
|
}>;
|
|
111
112
|
export declare const WorkspaceConfigSchema: z.ZodObject<{
|
|
112
|
-
|
|
113
|
+
dir: z.ZodDefault<z.ZodString>;
|
|
113
114
|
}, "strip", z.ZodTypeAny, {
|
|
114
|
-
|
|
115
|
+
dir: string;
|
|
115
116
|
}, {
|
|
116
|
-
|
|
117
|
+
dir?: string | undefined;
|
|
117
118
|
}>;
|
|
118
119
|
/**
|
|
119
120
|
* Run-budget guardrails for `pl listen` (issue #62): non-dollar caps only.
|
|
@@ -143,6 +144,8 @@ export declare const ListenCapsConfigSchema: z.ZodObject<{
|
|
|
143
144
|
* rather than a literal. The grouping_window_ms configures the debounce window.
|
|
144
145
|
*/
|
|
145
146
|
export declare const ListenConfigSchema: z.ZodObject<{
|
|
147
|
+
/** Local intake host. Default 127.0.0.1. */
|
|
148
|
+
host: z.ZodDefault<z.ZodString>;
|
|
146
149
|
/** Local intake port (4181: clear of 9090/9093/3000/8080 defaults). 0 = ephemeral. */
|
|
147
150
|
port: z.ZodDefault<z.ZodNumber>;
|
|
148
151
|
/** Shared bearer token Alertmanager presents; unset ⇒ `pl listen` refuses to start. */
|
|
@@ -164,6 +167,7 @@ export declare const ListenConfigSchema: z.ZodObject<{
|
|
|
164
167
|
max_turns?: number | undefined;
|
|
165
168
|
}, Record<string, unknown> | undefined>;
|
|
166
169
|
}, "strip", z.ZodTypeAny, {
|
|
170
|
+
host: string;
|
|
167
171
|
port: number;
|
|
168
172
|
max_pending: number;
|
|
169
173
|
grouping_window_ms: number;
|
|
@@ -175,6 +179,7 @@ export declare const ListenConfigSchema: z.ZodObject<{
|
|
|
175
179
|
token?: string | undefined;
|
|
176
180
|
slack_webhook_url?: string | undefined;
|
|
177
181
|
}, {
|
|
182
|
+
host?: string | undefined;
|
|
178
183
|
port?: number | undefined;
|
|
179
184
|
token?: string | undefined;
|
|
180
185
|
max_pending?: number | undefined;
|
|
@@ -183,22 +188,23 @@ export declare const ListenConfigSchema: z.ZodObject<{
|
|
|
183
188
|
caps?: Record<string, unknown> | undefined;
|
|
184
189
|
}>;
|
|
185
190
|
/**
|
|
186
|
-
* Read-only telemetry + app endpoints the harness may query.
|
|
187
|
-
*
|
|
188
|
-
*
|
|
191
|
+
* Read-only telemetry + app endpoints the harness may query. Keys are snake_case
|
|
192
|
+
* (the config-file convention — every other key in this schema is snake_case); the
|
|
193
|
+
* CLI maps them to the engine's camelCase `TelemetryEndpoints` at the boundary
|
|
194
|
+
* (`run-investigation`). All optional here — resolved/overridden per run.
|
|
189
195
|
*/
|
|
190
196
|
export declare const TelemetryConfigSchema: z.ZodObject<{
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
197
|
+
prometheus_url: z.ZodOptional<z.ZodString>;
|
|
198
|
+
alertmanager_url: z.ZodOptional<z.ZodString>;
|
|
199
|
+
api_url: z.ZodOptional<z.ZodString>;
|
|
194
200
|
}, "strip", z.ZodTypeAny, {
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
201
|
+
prometheus_url?: string | undefined;
|
|
202
|
+
alertmanager_url?: string | undefined;
|
|
203
|
+
api_url?: string | undefined;
|
|
198
204
|
}, {
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
205
|
+
prometheus_url?: string | undefined;
|
|
206
|
+
alertmanager_url?: string | undefined;
|
|
207
|
+
api_url?: string | undefined;
|
|
202
208
|
}>;
|
|
203
209
|
/**
|
|
204
210
|
* A service in the catalog (ADR-0015). The CLI maps the matched entry into the
|
|
@@ -247,16 +253,16 @@ export declare const RepoConfigSchema: z.ZodObject<{
|
|
|
247
253
|
alert_sources?: Record<string, Record<string, string>> | undefined;
|
|
248
254
|
}>;
|
|
249
255
|
export declare const SynthConfigSchema: z.ZodObject<{
|
|
250
|
-
provider: z.ZodOptional<z.ZodEnum<["
|
|
256
|
+
provider: z.ZodOptional<z.ZodEnum<["anthropic" | "openai" | "google" | "ollama" | "groq" | "custom", ...("anthropic" | "openai" | "google" | "ollama" | "groq" | "custom")[]]>>;
|
|
251
257
|
model: z.ZodOptional<z.ZodString>;
|
|
252
258
|
base_url: z.ZodOptional<z.ZodString>;
|
|
253
259
|
}, "strip", z.ZodTypeAny, {
|
|
260
|
+
provider?: "anthropic" | "openai" | "google" | "ollama" | "groq" | "custom" | undefined;
|
|
254
261
|
model?: string | undefined;
|
|
255
|
-
provider?: "custom" | "anthropic" | "openai" | "google" | "ollama" | "groq" | undefined;
|
|
256
262
|
base_url?: string | undefined;
|
|
257
263
|
}, {
|
|
264
|
+
provider?: "anthropic" | "openai" | "google" | "ollama" | "groq" | "custom" | undefined;
|
|
258
265
|
model?: string | undefined;
|
|
259
|
-
provider?: "custom" | "anthropic" | "openai" | "google" | "ollama" | "groq" | undefined;
|
|
260
266
|
base_url?: string | undefined;
|
|
261
267
|
}>;
|
|
262
268
|
export declare const PlConfigSchema: z.ZodObject<{
|
|
@@ -329,14 +335,15 @@ export declare const PlConfigSchema: z.ZodObject<{
|
|
|
329
335
|
max_turns?: number | undefined;
|
|
330
336
|
}, Record<string, unknown> | undefined>;
|
|
331
337
|
synth: z.ZodEffects<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>, {
|
|
338
|
+
provider?: "anthropic" | "openai" | "google" | "ollama" | "groq" | "custom" | undefined;
|
|
332
339
|
model?: string | undefined;
|
|
333
|
-
provider?: "custom" | "anthropic" | "openai" | "google" | "ollama" | "groq" | undefined;
|
|
334
340
|
base_url?: string | undefined;
|
|
335
341
|
}, Record<string, unknown> | undefined>;
|
|
336
342
|
workspace: z.ZodEffects<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>, {
|
|
337
|
-
|
|
343
|
+
dir: string;
|
|
338
344
|
}, Record<string, unknown> | undefined>;
|
|
339
345
|
listen: z.ZodEffects<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>, {
|
|
346
|
+
host: string;
|
|
340
347
|
port: number;
|
|
341
348
|
max_pending: number;
|
|
342
349
|
grouping_window_ms: number;
|
|
@@ -349,9 +356,9 @@ export declare const PlConfigSchema: z.ZodObject<{
|
|
|
349
356
|
slack_webhook_url?: string | undefined;
|
|
350
357
|
}, Record<string, unknown> | undefined>;
|
|
351
358
|
telemetry: z.ZodEffects<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>, {
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
359
|
+
prometheus_url?: string | undefined;
|
|
360
|
+
alertmanager_url?: string | undefined;
|
|
361
|
+
api_url?: string | undefined;
|
|
355
362
|
}, Record<string, unknown> | undefined>;
|
|
356
363
|
alert_sources: z.ZodEffects<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>>, Record<string, Record<string, string>>, Record<string, Record<string, string>> | undefined>;
|
|
357
364
|
/** Per-harness native passthrough (ADR-0017), keyed by harness id. */
|
|
@@ -368,6 +375,7 @@ export declare const PlConfigSchema: z.ZodObject<{
|
|
|
368
375
|
}> | undefined>;
|
|
369
376
|
}, "strip", z.ZodTypeAny, {
|
|
370
377
|
listen: {
|
|
378
|
+
host: string;
|
|
371
379
|
port: number;
|
|
372
380
|
max_pending: number;
|
|
373
381
|
grouping_window_ms: number;
|
|
@@ -410,17 +418,17 @@ export declare const PlConfigSchema: z.ZodObject<{
|
|
|
410
418
|
max_turns?: number | undefined;
|
|
411
419
|
};
|
|
412
420
|
synth: {
|
|
421
|
+
provider?: "anthropic" | "openai" | "google" | "ollama" | "groq" | "custom" | undefined;
|
|
413
422
|
model?: string | undefined;
|
|
414
|
-
provider?: "custom" | "anthropic" | "openai" | "google" | "ollama" | "groq" | undefined;
|
|
415
423
|
base_url?: string | undefined;
|
|
416
424
|
};
|
|
417
425
|
workspace: {
|
|
418
|
-
|
|
426
|
+
dir: string;
|
|
419
427
|
};
|
|
420
428
|
telemetry: {
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
429
|
+
prometheus_url?: string | undefined;
|
|
430
|
+
alertmanager_url?: string | undefined;
|
|
431
|
+
api_url?: string | undefined;
|
|
424
432
|
};
|
|
425
433
|
harnesses: Record<string, {
|
|
426
434
|
native?: Record<string, unknown> | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/config/schema.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;;;EAEjC,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB;;;;;;EAEpC,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB;IACnC,qEAAqE;;IAErE,gEAAgE;;IAEhE,+EAA+E;;;;;;;;;;EAE9E,CAAC;AAEH,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB;;IAE7B
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/config/schema.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;;;EAEjC,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,yBAAyB;;;;;;EAEpC,CAAC;AAEH;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB;IACnC,qEAAqE;;IAErE,gEAAgE;;IAEhE,+EAA+E;;;;;;;;;;EAE9E,CAAC;AAEH,8DAA8D;AAC9D,eAAO,MAAM,iBAAiB;;IAE7B;;;;;;OAMG;;IAEH,4DAA4D;;;;IAE5D;;;;;;OAMG;;IAEH;;;OAGG;;;;;;IAEH;;;;OAIG;;;;;;;;;;;;;;;;;;;;;;;;;EAGF,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;EAEhC,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;IAClC,qDAAqD;;IAErD,gEAAgE;;IAEhE,iFAAiF;;;;;;;;;;EAEhF,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,kBAAkB;IAC9B,4CAA4C;;IAE5C,sFAAsF;;IAEtF,uFAAuF;;IAEvF,wDAAwD;;IAExD,iFAAiF;;IAEjF;;;;OAIG;;IAEH,mFAAmF;;;;;;;;;;;;;;;;;;;;;;;;;;EAElF,CAAC;AAEH;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;EAIhC,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;;IAE/B,yDAAyD;;IAEzD,2DAA2D;;;;;;;;;;EAE1D,CAAC;AAEH,gFAAgF;AAChF,eAAO,MAAM,qBAAqB;;;;;;;;;EAGhC,CAAC;AAEH,mFAAmF;AACnF,eAAO,MAAM,uBAAuB,iEAGnC,CAAC;AAEF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;EAI3B,CAAC;AAuBH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAI5B,CAAC;AAEH,eAAO,MAAM,cAAc;;IAE1B,mFAAmF;;;;;;;;;;;;;;;;;;;;;;;IAMnF,iFAAiF;;;QA3DjF,yDAAyD;;QAEzD,2DAA2D;;;;;;;;;;;;;;;;;;;IA8D3D,wDAAwD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAUxD,sEAAsE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKrE,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAC3D,2EAA2E;AAC3E,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,cAAc,CAAC,CAAC"}
|
|
@@ -57,10 +57,11 @@ export const AgentLimitsConfigSchema = z.object({
|
|
|
57
57
|
export const AgentConfigSchema = z.object({
|
|
58
58
|
default: z.enum(HARNESS_IDS).default("claude-code"),
|
|
59
59
|
/**
|
|
60
|
-
* BARE model id (e.g. "gpt-oss:120b")
|
|
61
|
-
* provider prefix (ADR-0017: deepagents prepends
|
|
62
|
-
*
|
|
63
|
-
*
|
|
60
|
+
* BARE model id (e.g. "gpt-oss:120b") for the Tier-2 HARNESS ONLY — the chosen
|
|
61
|
+
* harness applies its own provider prefix (ADR-0017: deepagents prepends
|
|
62
|
+
* "openai:"; Claude Code takes it bare). Omit to let the harness pick its own
|
|
63
|
+
* default. The Tier-1 reduce model is a SEPARATE knob — `synth.model` (ADR-0013/
|
|
64
|
+
* 0016): the two calls go to different providers, so one key must never feed both.
|
|
64
65
|
*/
|
|
65
66
|
model: z.string().optional(),
|
|
66
67
|
/** The posture dial (ADR-0017). Defaults to `read-only`. */
|
|
@@ -87,7 +88,7 @@ export const AgentConfigSchema = z.object({
|
|
|
87
88
|
max_turns: z.number().int().positive().optional(),
|
|
88
89
|
});
|
|
89
90
|
export const WorkspaceConfigSchema = z.object({
|
|
90
|
-
|
|
91
|
+
dir: z.string().default("~/.prismalens"),
|
|
91
92
|
});
|
|
92
93
|
/**
|
|
93
94
|
* Run-budget guardrails for `pl listen` (issue #62): non-dollar caps only.
|
|
@@ -109,6 +110,8 @@ export const ListenCapsConfigSchema = z.object({
|
|
|
109
110
|
* rather than a literal. The grouping_window_ms configures the debounce window.
|
|
110
111
|
*/
|
|
111
112
|
export const ListenConfigSchema = z.object({
|
|
113
|
+
/** Local intake host. Default 127.0.0.1. */
|
|
114
|
+
host: z.string().default("127.0.0.1"),
|
|
112
115
|
/** Local intake port (4181: clear of 9090/9093/3000/8080 defaults). 0 = ephemeral. */
|
|
113
116
|
port: z.number().int().min(0).max(65535).default(4181),
|
|
114
117
|
/** Shared bearer token Alertmanager presents; unset ⇒ `pl listen` refuses to start. */
|
|
@@ -127,14 +130,15 @@ export const ListenConfigSchema = z.object({
|
|
|
127
130
|
caps: optionalWithDefaults(ListenCapsConfigSchema),
|
|
128
131
|
});
|
|
129
132
|
/**
|
|
130
|
-
* Read-only telemetry + app endpoints the harness may query.
|
|
131
|
-
*
|
|
132
|
-
*
|
|
133
|
+
* Read-only telemetry + app endpoints the harness may query. Keys are snake_case
|
|
134
|
+
* (the config-file convention — every other key in this schema is snake_case); the
|
|
135
|
+
* CLI maps them to the engine's camelCase `TelemetryEndpoints` at the boundary
|
|
136
|
+
* (`run-investigation`). All optional here — resolved/overridden per run.
|
|
133
137
|
*/
|
|
134
138
|
export const TelemetryConfigSchema = z.object({
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
139
|
+
prometheus_url: z.string().optional(),
|
|
140
|
+
alertmanager_url: z.string().optional(),
|
|
141
|
+
api_url: z.string().optional(),
|
|
138
142
|
});
|
|
139
143
|
/**
|
|
140
144
|
* A service in the catalog (ADR-0015). The CLI maps the matched entry into the
|
|
@@ -169,7 +173,16 @@ export const RepoConfigSchema = z.object({
|
|
|
169
173
|
function optionalWithDefaults(schema) {
|
|
170
174
|
return z
|
|
171
175
|
.optional(z.record(z.string(), z.unknown()))
|
|
172
|
-
.transform((val) =>
|
|
176
|
+
.transform((val, ctx) => {
|
|
177
|
+
const res = schema.safeParse(val ?? {});
|
|
178
|
+
if (!res.success) {
|
|
179
|
+
for (const issue of res.error.issues) {
|
|
180
|
+
ctx.addIssue(issue);
|
|
181
|
+
}
|
|
182
|
+
return z.NEVER;
|
|
183
|
+
}
|
|
184
|
+
return res.data;
|
|
185
|
+
});
|
|
173
186
|
}
|
|
174
187
|
export const SynthConfigSchema = z.object({
|
|
175
188
|
provider: llmProviderIdSchema.optional(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/config/schema.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6BAA6B;AAE7B;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EAAE,WAAW,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;CACnD,CAAC,CAAC;AAEH;;;;;GAKG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,EAAE;CACpD,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,qEAAqE;IACrE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACrD,gEAAgE;IAChE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IACjD,+EAA+E;IAC/E,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC3C,CAAC,CAAC;AAEH,8DAA8D;AAC9D,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;IACnD
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/config/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-stdin.d.ts","sourceRoot":"","sources":["../../../src/core/parse-stdin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"parse-stdin.d.ts","sourceRoot":"","sources":["../../../src/core/parse-stdin.ts"],"names":[],"mappings":"AAGA,wBAAsB,UAAU,IAAI,OAAO,CAC1C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CACnC,CAiBA"}
|
|
@@ -1,14 +1,5 @@
|
|
|
1
1
|
// SPDX-License-Identifier: Apache-2.0
|
|
2
2
|
// Copyright 2026 Sumit Patel
|
|
3
|
-
/**
|
|
4
|
-
* Read JSON from piped stdin (salvaged from the retired pl orchestrator). Used to
|
|
5
|
-
* accept a webhook-shaped alert payload piped into `prismalens investigate`.
|
|
6
|
-
*
|
|
7
|
-
* Returns `undefined` if:
|
|
8
|
-
* - stdin is a TTY (interactive terminal, no pipe), or
|
|
9
|
-
* - the piped data is empty or not valid JSON.
|
|
10
|
-
*/
|
|
11
|
-
import consola from "consola";
|
|
12
3
|
export async function parseStdin() {
|
|
13
4
|
if (process.stdin.isTTY)
|
|
14
5
|
return undefined;
|
|
@@ -22,9 +13,9 @@ export async function parseStdin() {
|
|
|
22
13
|
try {
|
|
23
14
|
return JSON.parse(raw);
|
|
24
15
|
}
|
|
25
|
-
catch {
|
|
26
|
-
|
|
27
|
-
|
|
16
|
+
catch (err) {
|
|
17
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
18
|
+
throw new Error(`invalid FiringAlert JSON on stdin: ${msg}`);
|
|
28
19
|
}
|
|
29
20
|
}
|
|
30
21
|
//# sourceMappingURL=parse-stdin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse-stdin.js","sourceRoot":"","sources":["../../../src/core/parse-stdin.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6BAA6B;AAE7B
|
|
1
|
+
{"version":3,"file":"parse-stdin.js","sourceRoot":"","sources":["../../../src/core/parse-stdin.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6BAA6B;AAE7B,MAAM,CAAC,KAAK,UAAU,UAAU;IAG/B,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAE1C,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACzC,MAAM,CAAC,IAAI,CAAC,KAAe,CAAC,CAAC;IAC9B,CAAC;IAED,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAC3D,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAE3B,IAAI,CAAC;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAA4B,CAAC;IACnD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,MAAM,IAAI,KAAK,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;IAC9D,CAAC;AACF,CAAC"}
|
|
@@ -61,12 +61,13 @@ export function resolveInvestigation(args, config) {
|
|
|
61
61
|
providerId = "ollama";
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
64
|
+
// Tier-1 reduce model (ADR-0013/0016): `synth.model` ONLY, never `agent.model`.
|
|
65
|
+
// `agent.model` is the Tier-2 harness model and can target a different provider
|
|
66
|
+
// (e.g. claude-code's "claude-sonnet-4-5"), so feeding it to the reduce provider
|
|
67
|
+
// (ollama/openai) would 404. Fall back to the provider's registry default.
|
|
68
|
+
const synthModel = config.synth.model ?? getDefaultModel(providerId) ?? "";
|
|
68
69
|
if (!synthModel && creds.source !== "none") {
|
|
69
|
-
throw new Error("No synthesis model configured (set synth.model
|
|
70
|
+
throw new Error("No synthesis model configured (set synth.model).");
|
|
70
71
|
}
|
|
71
72
|
// Context enrichment (ADR-0015) — a single-alert CLI run is NOT context-free: it
|
|
72
73
|
// still knows the service/repos/logs from `prismalens.config.yaml`.
|
|
@@ -93,12 +94,13 @@ export function resolveInvestigation(args, config) {
|
|
|
93
94
|
// engine's SandboxLimits shape, dropping unset ones so "no cap" stays no cap
|
|
94
95
|
// (never a lying default). Only present when at least one knob is set.
|
|
95
96
|
const limits = toSandboxLimits(config.agent.limits);
|
|
97
|
+
// Map the snake_case config keys onto the engine's camelCase TelemetryEndpoints.
|
|
96
98
|
const telemetry = {
|
|
97
|
-
prometheusUrl: config.telemetry.
|
|
99
|
+
prometheusUrl: config.telemetry.prometheus_url ??
|
|
98
100
|
INVESTIGATION_DEFAULTS.telemetry.prometheusUrl,
|
|
99
|
-
alertmanagerUrl: config.telemetry.
|
|
101
|
+
alertmanagerUrl: config.telemetry.alertmanager_url ??
|
|
100
102
|
INVESTIGATION_DEFAULTS.telemetry.alertmanagerUrl,
|
|
101
|
-
apiUrl: config.telemetry.
|
|
103
|
+
apiUrl: config.telemetry.api_url ?? INVESTIGATION_DEFAULTS.telemetry.apiUrl,
|
|
102
104
|
};
|
|
103
105
|
const request = {
|
|
104
106
|
query: args.query,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run-investigation.js","sourceRoot":"","sources":["../../../src/core/run-investigation.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6BAA6B;AAE7B;;;;;;;;;;GAUG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAE9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EACN,wBAAwB,EACxB,eAAe,GAEf,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EACN,iBAAiB,EACjB,oBAAoB,IAAI,0BAA0B,GAKlD,MAAM,oBAAoB,CAAC;AA2C5B;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,MAAgB;IACjD,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QAC3B,OAAO,CACN,kBAAkB,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;aAC9D,MAAM,KAAK,MAAM,CACnB,CAAC;IACH,CAAC;IACD,KAAK,MAAM,EAAE,IAAI,wBAAwB,EAAE,CAAC;QAC3C,IAAI,kBAAkB,CAAC,EAAE,CAAC,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,MAAM,UAAU,oBAAoB,CACnC,IAA8B,EAC9B,MAAgB;IAEhB,+DAA+D;IAC/D,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;IAE3D,IAAI,UAAU,GAAG,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;IACvC,IAAI,KAAwD,CAAC;IAE7D,IAAI,UAAU,EAAE,CAAC;QAChB,KAAK,GAAG,kBAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC9D,IAAI,UAAU,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CACd,+DAA+D,CAC/D,CAAC;QACH,CAAC;IACF,CAAC;SAAM,CAAC;QACP,KAAK,MAAM,EAAE,IAAI,wBAAwB,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC;YACzC,IAAI,SAAS,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;gBACjC,UAAU,GAAG,EAAE,CAAC;gBAChB,MAAM;YACP,CAAC;QACF,CAAC;QACD,IAAI,UAAU,EAAE,CAAC;YAChB,KAAK,GAAG,kBAAkB,CACzB,UAA2B,EAC3B,MAAM,CAAC,KAAK,CAAC,QAAQ,CACrB,CAAC;QACH,CAAC;aAAM,CAAC;YACP,KAAK,GAAG,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YACjD,UAAU,GAAG,QAAQ,CAAC;QACvB,CAAC;IACF,CAAC;IAED,MAAM,UAAU,GACf,MAAM,CAAC,KAAK,CAAC,KAAK
|
|
1
|
+
{"version":3,"file":"run-investigation.js","sourceRoot":"","sources":["../../../src/core/run-investigation.ts"],"names":[],"mappings":"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"}
|
package/dist/src/core/session.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* Workspace + session manager for engine runs (ADR-0010), simplified from the
|
|
5
5
|
* retired pl orchestrator's session-manager.
|
|
6
6
|
*
|
|
7
|
-
* Layout under `<workspace.
|
|
7
|
+
* Layout under `<workspace.dir>` (default ~/.prismalens):
|
|
8
8
|
* prismalens.db - sqlite store for all run metadata
|
|
9
9
|
* runs/<runId>/ - per-run workspace dir
|
|
10
10
|
*/
|
|
@@ -22,8 +22,8 @@ function expandHome(p) {
|
|
|
22
22
|
return p;
|
|
23
23
|
}
|
|
24
24
|
export function resolveBaseDir(baseDir) {
|
|
25
|
-
// Honor
|
|
26
|
-
// an explicit `workspace.
|
|
25
|
+
// Honor PRISMALENS_WORKSPACE_DIR for the default workspace (via getAppDataDir);
|
|
26
|
+
// an explicit `workspace.dir` override still wins.
|
|
27
27
|
if (!baseDir || baseDir === "~/.prismalens")
|
|
28
28
|
return getAppDataDir();
|
|
29
29
|
return resolve(expandHome(baseDir));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/core/session.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6BAA6B;AAE7B;;;;;;;GAOG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAKjE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAsEjE,MAAM,SAAS,GAAG,wBAAwB,CAAC;AAE3C,SAAS,UAAU,CAAC,CAAS;IAC5B,IAAI,CAAC,KAAK,GAAG;QAAE,OAAO,OAAO,EAAE,CAAC;IAChC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,CAAC;AACV,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAgB;IAC9C,
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/core/session.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6BAA6B;AAE7B;;;;;;;GAOG;AACH,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAKjE,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAsEjE,MAAM,SAAS,GAAG,wBAAwB,CAAC;AAE3C,SAAS,UAAU,CAAC,CAAS;IAC5B,IAAI,CAAC,KAAK,GAAG;QAAE,OAAO,OAAO,EAAE,CAAC;IAChC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,CAAC;AACV,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,OAAgB;IAC9C,gFAAgF;IAChF,mDAAmD;IACnD,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,eAAe;QAAE,OAAO,aAAa,EAAE,CAAC;IACpE,OAAO,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC;AACrC,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAgB;IACpD,MAAM,IAAI,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IACrC,MAAM,EAAE,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IAE9B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAEpC,SAAS,WAAW,CAAC,KAAa;QACjC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,KAAK,GAAG,CAAC,CAAC;IAC1E,CAAC;IAED,SAAS,YAAY,CAAC,KAAa;QAClC,WAAW,CAAC,KAAK,CAAC,CAAC;QACnB,OAAO,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,IAAI,oBAAoB,CAAC,IAAI,EAAE,EAAE,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;AACtE,CAAC"}
|
|
@@ -2,6 +2,8 @@ import type { GroupingPort } from "../cli/grouping.js";
|
|
|
2
2
|
export interface ListenServerOptions {
|
|
3
3
|
/** Port to bind (0 = ephemeral, for tests). */
|
|
4
4
|
port: number;
|
|
5
|
+
/** Host to bind (default 127.0.0.1). */
|
|
6
|
+
host?: string;
|
|
5
7
|
/** Shared bearer token; every request without it gets 401. */
|
|
6
8
|
token: string;
|
|
7
9
|
/** Grouping layer. */
|
|
@@ -13,12 +15,15 @@ export interface ListenServerOptions {
|
|
|
13
15
|
* regardless of size. Default 8.
|
|
14
16
|
*/
|
|
15
17
|
maxPending?: number;
|
|
18
|
+
log?: (line: string) => void;
|
|
16
19
|
}
|
|
17
20
|
/** The one route this receiver serves (Alertmanager webhook_config url path). */
|
|
18
21
|
export declare const WEBHOOK_PATH = "/webhooks/alertmanager";
|
|
19
22
|
export interface ListenServer {
|
|
20
23
|
/** The actually-bound port (resolves port 0). */
|
|
21
24
|
port: number;
|
|
25
|
+
/** The actually-bound host. */
|
|
26
|
+
host: string;
|
|
22
27
|
close(): Promise<void>;
|
|
23
28
|
}
|
|
24
29
|
/** Start the intake server; resolves once the port is bound. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/http/server.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/http/server.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGvD,MAAM,WAAW,mBAAmB;IACnC,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,sBAAsB;IACtB,QAAQ,EAAE,YAAY,CAAC;IAEvB;;;;;OAKG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AAID,iFAAiF;AACjF,eAAO,MAAM,YAAY,2BAA2B,CAAC;AAErD,MAAM,WAAW,YAAY;IAC5B,iDAAiD;IACjD,IAAI,EAAE,MAAM,CAAC;IACb,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACvB;AA4BD,gEAAgE;AAChE,wBAAsB,iBAAiB,CACtC,OAAO,EAAE,mBAAmB,GAC1B,OAAO,CAAC,YAAY,CAAC,CA4IvB"}
|
package/dist/src/http/server.js
CHANGED
|
@@ -10,6 +10,7 @@
|
|
|
10
10
|
import { timingSafeEqual } from "node:crypto";
|
|
11
11
|
import { createServer, } from "node:http";
|
|
12
12
|
import { PrometheusWebhookSchema } from "@prismalens/contracts";
|
|
13
|
+
import { deriveDedupeKey, deriveGroupKey } from "../cli/grouping.js";
|
|
13
14
|
const DEFAULT_MAX_PENDING = 8;
|
|
14
15
|
/** The one route this receiver serves (Alertmanager webhook_config url path). */
|
|
15
16
|
export const WEBHOOK_PATH = "/webhooks/alertmanager";
|
|
@@ -116,6 +117,17 @@ export async function startListenServer(options) {
|
|
|
116
117
|
received: parsed.data.alerts.length,
|
|
117
118
|
accepted: firing.length,
|
|
118
119
|
});
|
|
120
|
+
const timestamp = new Date().toISOString();
|
|
121
|
+
const fingerprint = firing.length > 0 ? deriveDedupeKey(firing[0]) : "none";
|
|
122
|
+
const groupKey = firing.length > 0 ? deriveGroupKey(firing[0], payload) : "none";
|
|
123
|
+
console.error(JSON.stringify({
|
|
124
|
+
event: "intake_accepted",
|
|
125
|
+
timestamp,
|
|
126
|
+
fingerprint,
|
|
127
|
+
groupKey,
|
|
128
|
+
alertCount: parsed.data.alerts.length,
|
|
129
|
+
acceptedCount: firing.length,
|
|
130
|
+
}));
|
|
119
131
|
options.grouping.admit(firing, payload);
|
|
120
132
|
};
|
|
121
133
|
const server = createServer((req, res) => {
|
|
@@ -131,7 +143,7 @@ export async function startListenServer(options) {
|
|
|
131
143
|
});
|
|
132
144
|
await new Promise((resolve, reject) => {
|
|
133
145
|
server.once("error", reject);
|
|
134
|
-
server.listen(options.port, "127.0.0.1", () => resolve());
|
|
146
|
+
server.listen(options.port, options.host ?? "127.0.0.1", () => resolve());
|
|
135
147
|
});
|
|
136
148
|
const address = server.address();
|
|
137
149
|
/* v8 ignore next 3 — a TCP listen never yields a pipe/null address */
|
|
@@ -140,6 +152,7 @@ export async function startListenServer(options) {
|
|
|
140
152
|
}
|
|
141
153
|
return {
|
|
142
154
|
port: address.port,
|
|
155
|
+
host: address.address,
|
|
143
156
|
close: () => {
|
|
144
157
|
options.grouping.shutdown();
|
|
145
158
|
return new Promise((resolve, reject) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/http/server.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6BAA6B;AAE7B;;;;;;GAMG;AACH,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EACN,YAAY,GAGZ,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../../src/http/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type SandboxMode } from "@prismalens/engine";
|
|
1
2
|
export interface JsonRpcServerOptions {
|
|
2
3
|
/** serverInfo.version reported by `initialize`. */
|
|
3
4
|
version: string;
|
|
@@ -6,6 +7,34 @@ export interface JsonRpcServerOptions {
|
|
|
6
7
|
/** Response/notification stream. Defaults to process.stdout. */
|
|
7
8
|
output?: NodeJS.WritableStream;
|
|
8
9
|
}
|
|
10
|
+
export interface InvestigateParams {
|
|
11
|
+
alert?: Record<string, unknown>;
|
|
12
|
+
query?: string;
|
|
13
|
+
repo?: string;
|
|
14
|
+
harness?: string;
|
|
15
|
+
model?: string;
|
|
16
|
+
config?: string;
|
|
17
|
+
service?: string;
|
|
18
|
+
/** The posture dial (ADR-0017): "read-only" | "supervised" | "auto" | "dangerous". */
|
|
19
|
+
mode?: string;
|
|
20
|
+
/** Alias for `mode: "dangerous"` — wins over `mode` when true. */
|
|
21
|
+
dangerouslySkipPermissions?: boolean;
|
|
22
|
+
/**
|
|
23
|
+
* The isolation boundary (ADR-0020): the CLI's `--sandbox` parity. A supplied
|
|
24
|
+
* value that is not one of SANDBOX_MODES is a `-32602` error, never a silent
|
|
25
|
+
* floor. Unset ⇒ `agent.sandbox` from config.
|
|
26
|
+
*/
|
|
27
|
+
sandbox?: SandboxMode;
|
|
28
|
+
/** Per-run turn ceiling for the default harness — the CLI's `--max-turns` parity. */
|
|
29
|
+
maxTurns?: number;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Coerce raw RPC params into the typed investigate shape. Unknown fields are
|
|
33
|
+
* dropped; a SUPPLIED `sandbox`/`maxTurns` that is malformed (wrong type, not a
|
|
34
|
+
* sandbox mode, non-positive-integer) THROWS `-32602` — absent is fine, invalid
|
|
35
|
+
* is never silently swallowed (the silent-accept antipattern the #148 audit flags).
|
|
36
|
+
*/
|
|
37
|
+
export declare function parseInvestigateParams(raw: unknown): InvestigateParams;
|
|
9
38
|
/**
|
|
10
39
|
* Run the JSON-RPC server until the input stream closes. Reads requests
|
|
11
40
|
* line-by-line, dispatches by method, and writes responses/notifications back as
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/jsonrpc/server.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../../src/jsonrpc/server.ts"],"names":[],"mappings":"AAyBA,OAAO,EAGN,KAAK,WAAW,EAEhB,MAAM,oBAAoB,CAAC;AA2B5B,MAAM,WAAW,oBAAoB;IACpC,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,qEAAqE;IACrE,KAAK,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;IAC9B,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC,cAAc,CAAC;CAC/B;AAcD,MAAM,WAAW,iBAAiB;IACjC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sFAAsF;IACtF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,kEAAkE;IAClE,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC;;;;OAIG;IACH,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,qFAAqF;IACrF,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,iBAAiB,CA6CtE;AAMD;;;;GAIG;AACH,wBAAsB,gBAAgB,CACrC,OAAO,EAAE,oBAAoB,GAC3B,OAAO,CAAC,IAAI,CAAC,CA0Lf"}
|