prismalens 0.1.0 → 0.1.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"grouping.d.ts","sourceRoot":"","sources":["../../../src/cli/grouping.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEtE,MAAM,WAAW,YAAY;IAC5B,aAAa,CACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,MAAM,CAAC;IACV,aAAa,IAAI,MAAM,CAAC;IACxB,KAAK,CACJ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,IAAI,CAAC;IACR,QAAQ,IAAI,IAAI,CAAC;IACjB,cAAc,IAAI,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,cAAc,CAAC;IACzB,gBAAgB,EAAE,CACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3B;AAED,wBAAgB,cAAc,CAC7B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,MAAM,CA8BR;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAetE;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,eAAe,GAAG,YAAY,CAqJ1E"}
1
+ {"version":3,"file":"grouping.d.ts","sourceRoot":"","sources":["../../../src/cli/grouping.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAe,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEtE,MAAM,WAAW,YAAY;IAC5B,aAAa,CACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,MAAM,CAAC;IACV,aAAa,IAAI,MAAM,CAAC;IACxB,KAAK,CACJ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EACjC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,IAAI,CAAC;IACR,QAAQ,IAAI,IAAI,CAAC;IACjB,cAAc,IAAI,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,cAAc,CAAC;IACzB,gBAAgB,EAAE,CACjB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAC7B,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3B;AAED,wBAAgB,cAAc,CAC7B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC9B,MAAM,CA8BR;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAetE;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,eAAe,GAAG,YAAY,CA6N1E"}
@@ -52,6 +52,7 @@ export function createGroupingLayer(options) {
52
52
  let shuttingDown = false;
53
53
  const windows = new Map();
54
54
  const running = new Map();
55
+ const activeAlerts = new Map();
55
56
  return {
56
57
  isShuttingDown() {
57
58
  return shuttingDown;
@@ -77,23 +78,59 @@ export function createGroupingLayer(options) {
77
78
  for (const alert of firing) {
78
79
  const groupKey = deriveGroupKey(alert, payload);
79
80
  const dedupeKey = deriveDedupeKey(alert);
81
+ // 1. Fingerprint-level suppression (Issue #137)
82
+ // If this exact fingerprint is already in-flight anywhere, attach the re-page
83
+ // to its existing investigation and suppress dispatch.
84
+ if (activeAlerts.has(dedupeKey)) {
85
+ const active = activeAlerts.get(dedupeKey);
86
+ if (active && active.phase === "running" && active.runId) {
87
+ const state = running.get(active.groupKey);
88
+ /* v8 ignore next */
89
+ if (state) {
90
+ // Note the re-page on the existing run
91
+ state.writeQueue = state.writeQueue
92
+ .then(() => options.sessions.appendGroupAlert(state.runId, alert))
93
+ /* v8 ignore start */
94
+ .catch((err) => {
95
+ options.log(`Failed to attach re-page to group ${active.groupKey} (run ${state.runId}): ${err}`);
96
+ });
97
+ /* v8 ignore stop */
98
+ }
99
+ else {
100
+ options.log(`Suppression lookup hit but run vanished for dedupeKey ${dedupeKey}`);
101
+ }
102
+ }
103
+ // If phase === "window", it's buffered; no action needed.
104
+ continue;
105
+ }
106
+ // 2. Group-level attachment (AC2)
107
+ // If the group is already running, attach this NEW alert (different dedupeKey) to it.
80
108
  if (running.has(groupKey)) {
81
109
  const state = running.get(groupKey);
82
- if (state && !state.seenKeys.has(dedupeKey)) {
83
- state.seenKeys.add(dedupeKey);
84
- // ATTACH
110
+ /* v8 ignore next */
111
+ if (state) {
112
+ // Note: we don't need seenKeys here because activeAlerts handles exact dupes above.
113
+ activeAlerts.set(dedupeKey, {
114
+ phase: "running",
115
+ groupKey,
116
+ runId: state.runId,
117
+ });
118
+ state.dedupeKeys.add(dedupeKey);
85
119
  state.writeQueue = state.writeQueue
86
120
  .then(() => options.sessions.appendGroupAlert(state.runId, alert))
121
+ /* v8 ignore start */
87
122
  .catch((err) => {
88
123
  options.log(`Failed to attach late alert to group ${groupKey} (run ${state.runId}): ${err}`);
89
124
  });
125
+ /* v8 ignore stop */
90
126
  }
91
127
  continue;
92
128
  }
93
129
  if (windows.has(groupKey)) {
94
130
  const state = windows.get(groupKey);
95
- if (state && !state.seenKeys.has(dedupeKey)) {
96
- state.seenKeys.add(dedupeKey);
131
+ /* v8 ignore next */
132
+ if (state) {
133
+ activeAlerts.set(dedupeKey, { phase: "window", groupKey });
97
134
  state.alerts.push(alert);
98
135
  }
99
136
  continue;
@@ -101,13 +138,22 @@ export function createGroupingLayer(options) {
101
138
  // IDLE -> WINDOW_OPEN
102
139
  const state = {
103
140
  alerts: [alert],
104
- seenKeys: new Set([dedupeKey]),
105
141
  timer: setTimeout(() => {
106
142
  // timer fires -> RUNNING
107
143
  const alertsToRun = state.alerts;
108
- const seenKeys = state.seenKeys;
109
144
  windows.delete(groupKey);
110
145
  const runId = randomUUID();
146
+ const dedupeKeys = new Set();
147
+ // Move all these dedupe keys to the running phase
148
+ for (const a of alertsToRun) {
149
+ const dkey = deriveDedupeKey(a);
150
+ activeAlerts.set(dkey, {
151
+ phase: "running",
152
+ groupKey,
153
+ runId,
154
+ });
155
+ dedupeKeys.add(dkey);
156
+ }
111
157
  // synchronously set up the record
112
158
  const rec = {
113
159
  groupKey,
@@ -122,8 +168,8 @@ export function createGroupingLayer(options) {
122
168
  });
123
169
  running.set(groupKey, {
124
170
  runId,
125
- seenKeys,
126
171
  writeQueue: writePromise,
172
+ dedupeKeys,
127
173
  });
128
174
  writePromise
129
175
  .then(async () => {
@@ -131,6 +177,9 @@ export function createGroupingLayer(options) {
131
177
  // resolving; don't start a new investigation while closing.
132
178
  if (shuttingDown) {
133
179
  running.delete(groupKey);
180
+ for (const key of dedupeKeys) {
181
+ activeAlerts.delete(key);
182
+ }
134
183
  return;
135
184
  }
136
185
  try {
@@ -141,14 +190,22 @@ export function createGroupingLayer(options) {
141
190
  }
142
191
  finally {
143
192
  running.delete(groupKey);
193
+ // Clean up global fingerprint registry for this run
194
+ for (const key of dedupeKeys) {
195
+ activeAlerts.delete(key);
196
+ }
144
197
  }
145
198
  })
146
199
  .catch((err) => {
147
200
  options.log(`Investigation for group ${groupKey} failed: ${err}`);
148
201
  running.delete(groupKey);
202
+ for (const key of dedupeKeys) {
203
+ activeAlerts.delete(key);
204
+ }
149
205
  });
150
206
  }, options.windowMs),
151
207
  };
208
+ activeAlerts.set(dedupeKey, { phase: "window", groupKey });
152
209
  windows.set(groupKey, state);
153
210
  }
154
211
  },
@@ -160,6 +217,7 @@ export function createGroupingLayer(options) {
160
217
  dropped++;
161
218
  }
162
219
  windows.clear();
220
+ activeAlerts.clear();
163
221
  if (dropped > 0) {
164
222
  options.log(`Shutdown: dropped ${dropped} pending grouping windows`);
165
223
  }
@@ -1 +1 @@
1
- {"version":3,"file":"grouping.js","sourceRoot":"","sources":["../../../src/cli/grouping.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"grouping.js","sourceRoot":"","sources":["../../../src/cli/grouping.ts"],"names":[],"mappings":"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"}
@@ -31,7 +31,7 @@ export interface InvestigationRunnerDeps {
31
31
  * No label / no catalog match / no checkout ⇒ the listen cwd, exactly like a
32
32
  * manual `pl investigate` run from that directory (single-player default).
33
33
  */
34
- export declare function resolveRepoPath(alert: Record<string, unknown>, config: PlConfig, fallbackCwd: string): string;
34
+ export declare function resolveRepoPath(alert: Record<string, unknown>, config: PlConfig): string;
35
35
  export declare function createInvestigationRunner(options: InvestigationRunnerOptions, deps?: InvestigationRunnerDeps): (runId: string, alerts: Record<string, unknown>[]) => Promise<void>;
36
36
  /**
37
37
  * The command body behind `pl listen`, separated from citty so it's testable:
@@ -1 +1 @@
1
- {"version":3,"file":"listen.d.ts","sourceRoot":"","sources":["../../../src/cli/listen.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,UAAU,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAIpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACN,KAAK,QAAQ,EAGb,MAAM,iBAAiB,CAAC;AASzB,OAAO,EACN,KAAK,YAAY,EAGjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAEN,iBAAiB,IAAI,qBAAqB,EAC1C,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,0BAA0B;IAC1C,mFAAmF;IACnF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5B;AAED,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAQ3D,MAAM,WAAW,uBAAuB;IACvC,UAAU,CAAC,EAAE,OAAO,gBAAgB,CAAC;IACrC,iBAAiB,CAAC,EAAE,OAAO,qBAAqB,CAAC;IACjD,MAAM,CAAC,EAAE,CACR,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,gBAAgB,KACrB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACpB;AAED;;;;;GAKG;AACH;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,MAAM,EAAE,QAAQ,EAChB,WAAW,EAAE,MAAM,GACjB,MAAM,CAQR;AAED,wBAAgB,yBAAyB,CACxC,OAAO,EAAE,0BAA0B,EACnC,IAAI,GAAE,uBAA4B,GAChC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAgJrE;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,0BAA0B,EACnC,IAAI,GAAE,uBAA4B,GAChC,OAAO,CAAC,YAAY,CAAC,CA2CvB;;;;;;;AAED,wBAiCG"}
1
+ {"version":3,"file":"listen.d.ts","sourceRoot":"","sources":["../../../src/cli/listen.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,UAAU,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAIpE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EACN,KAAK,QAAQ,EAGb,MAAM,iBAAiB,CAAC;AASzB,OAAO,EACN,KAAK,YAAY,EAGjB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAEN,iBAAiB,IAAI,qBAAqB,EAC1C,MAAM,kBAAkB,CAAC;AAE1B,MAAM,WAAW,0BAA0B;IAC1C,mFAAmF;IACnF,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5B;AAED,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAQ3D,MAAM,WAAW,uBAAuB;IACvC,UAAU,CAAC,EAAE,OAAO,gBAAgB,CAAC;IACrC,iBAAiB,CAAC,EAAE,OAAO,qBAAqB,CAAC;IACjD,MAAM,CAAC,EAAE,CACR,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,gBAAgB,KACrB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACpB;AAED;;;;;GAKG;AACH;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC9B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,MAAM,EAAE,QAAQ,GACd,MAAM,CAmBR;AAED,wBAAgB,yBAAyB,CACxC,OAAO,EAAE,0BAA0B,EACnC,IAAI,GAAE,uBAA4B,GAChC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CA4KrE;AAED;;;;;GAKG;AACH,wBAAsB,qBAAqB,CAC1C,OAAO,EAAE,0BAA0B,EACnC,IAAI,GAAE,uBAA4B,GAChC,OAAO,CAAC,YAAY,CAAC,CAgEvB;;;;;;;AAED,wBAiCG"}
@@ -43,17 +43,21 @@ import { notifyRun } from "../core/slack-notify.js";
43
43
  * No label / no catalog match / no checkout ⇒ the listen cwd, exactly like a
44
44
  * manual `pl investigate` run from that directory (single-player default).
45
45
  */
46
- export function resolveRepoPath(alert, config, fallbackCwd) {
46
+ export function resolveRepoPath(alert, config) {
47
47
  const name = pickServiceLabel(alert);
48
- const repoRef = name ? config.services[name]?.repo : undefined;
49
- if (!repoRef)
50
- return fallbackCwd;
48
+ if (!name) {
49
+ throw new Error(`Listen dispatch refused: alert is missing a service label (cannot resolve an investigation workspace).`);
50
+ }
51
+ const repoRef = config.services[name]?.repo;
52
+ if (!repoRef) {
53
+ throw new Error(`Listen dispatch refused: service "${name}" has no mapped repo in config (cannot resolve an investigation workspace).`);
54
+ }
51
55
  const localPath = config.repos[repoRef]?.local_path;
52
56
  if (localPath)
53
57
  return resolve(localPath);
54
58
  if (existsSync(repoRef))
55
59
  return resolve(repoRef);
56
- return fallbackCwd;
60
+ throw new Error(`Listen dispatch refused: repo "${repoRef}" (mapped from service "${name}") does not exist locally (cannot resolve an investigation workspace).`);
57
61
  }
58
62
  export function createInvestigationRunner(options, deps = {}) {
59
63
  const conductRun = deps.conductRun ?? engineConductRun;
@@ -70,13 +74,42 @@ export function createInvestigationRunner(options, deps = {}) {
70
74
  cwd,
71
75
  ...(options.configPath ? { configPath: options.configPath } : {}),
72
76
  });
77
+ const alertname = (alerts[0]?.labels?.alertname ?? undefined);
78
+ // AC5: the checkout under investigation follows the ALERT (service label →
79
+ // catalog), not the directory the server happened to start in.
80
+ // MUST be resolved before consuming caps so unmapped alerts do not exhaust budget.
81
+ let repoPath;
82
+ try {
83
+ repoPath = resolveRepoPath(alerts[0], config);
84
+ }
85
+ catch (err) {
86
+ const reason = err instanceof Error ? err.message : String(err);
87
+ console.error(JSON.stringify({
88
+ event: "dispatch_refused",
89
+ runId,
90
+ reason,
91
+ ...(alertname ? { alertname } : {}),
92
+ }));
93
+ options.log(`Refused run ${runId} (${reason})`);
94
+ const refusedSessions = createSessionManager(config.workspace.base_dir);
95
+ try {
96
+ await refusedSessions.recordSuppressed({
97
+ runId,
98
+ reason,
99
+ ...(alertname ? { alertname } : {}),
100
+ });
101
+ }
102
+ finally {
103
+ refusedSessions.close?.();
104
+ }
105
+ return; // refused, never consume caps
106
+ }
73
107
  const dispatchCaps = {
74
108
  maxConcurrent: config.listen.caps.max_concurrent,
75
109
  maxPerHour: config.listen.caps.max_per_hour,
76
110
  };
77
111
  const decision = caps.tryDispatch(dispatchCaps, Date.now());
78
112
  if (!decision.allow) {
79
- const alertname = (alerts[0]?.labels?.alertname ?? undefined);
80
113
  // Structured suppression log — match the repo convention
81
114
  // (slack-notify.ts: console.error(JSON.stringify({ event, ... }))).
82
115
  console.error(JSON.stringify({
@@ -101,9 +134,6 @@ export function createInvestigationRunner(options, deps = {}) {
101
134
  }
102
135
  return; // never arm a sandbox / call conductRun for a suppressed run
103
136
  }
104
- // AC5: the checkout under investigation follows the ALERT (service label →
105
- // catalog), not the directory the server happened to start in.
106
- const repoPath = resolveRepoPath(alerts[0], config, cwd);
107
137
  const harnessName = config.agent.default;
108
138
  const { selection } = await resolveRunSandbox(harnessName, config.agent.sandbox, config);
109
139
  let sessions;
@@ -120,6 +150,7 @@ export function createInvestigationRunner(options, deps = {}) {
120
150
  ...(config.listen.caps.max_turns !== undefined
121
151
  ? { maxTurns: config.listen.caps.max_turns }
122
152
  : {}),
153
+ isolateSettings: true,
123
154
  }, config);
124
155
  const { context, harness, synth, fidelity, maxBranches } = resolved;
125
156
  const primaryAlert = context.alerts[0];
@@ -194,6 +225,24 @@ export async function startListenFromConfig(options, deps = {}) {
194
225
  throw new Error("config is missing listen.token (required — intake auth). Add listen.token to prismalens.config.yaml.");
195
226
  }
196
227
  const sessions = createSessionManager(config.workspace.base_dir);
228
+ // Startup reaper (#136): mark any orphaned "running" runs from a previous
229
+ // dead listener as errored, so pl status reflects reality.
230
+ const staleRuns = await sessions.list({ status: ["running"] });
231
+ // Liveness guard: only reap runs whose updatedAt is older than the max possible
232
+ // run duration (wall-clock cap if configured, else 1 hour) plus 5 minutes slack.
233
+ const runWallClockMs = config.agent.limits.wall_clock_ms || 60 * 60 * 1000;
234
+ const staleThresholdMs = runWallClockMs + 5 * 60 * 1000;
235
+ const now = Date.now();
236
+ for (const run of staleRuns) {
237
+ const updatedTime = new Date(run.updatedAt).getTime();
238
+ if (now - updatedTime > staleThresholdMs) {
239
+ await sessions.update(run.runId, {
240
+ status: "errored",
241
+ error: "listener process died mid-investigation (interrupted)",
242
+ });
243
+ options.log(`Reaped stale run ${run.runId} from a previous listener`);
244
+ }
245
+ }
197
246
  const grouping = createGroupingLayer({
198
247
  windowMs: config.listen.grouping_window_ms,
199
248
  sessions,
@@ -1 +1 @@
1
- {"version":3,"file":"listen.js","sourceRoot":"","sources":["../../../src/cli/listen.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listen.js","sourceRoot":"","sources":["../../../src/cli/listen.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../../src/core/db.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAYpE,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CA0D9D"}
1
+ {"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../../src/core/db.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,IAAI,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAyEpE,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAmC9D"}
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: Apache-2.0
2
2
  // Copyright 2026 Sumit Patel
3
- import { mkdirSync } from "node:fs";
3
+ import { existsSync, mkdirSync, renameSync } from "node:fs";
4
4
  import { join } from "node:path";
5
5
  let DatabaseSync;
6
6
  try {
@@ -11,10 +11,7 @@ catch {
11
11
  console.error("PrismaLens requires Node >= 22.13.");
12
12
  process.exit(1);
13
13
  }
14
- export function openDatabase(baseDir) {
15
- mkdirSync(baseDir, { recursive: true });
16
- const db = new DatabaseSync(join(baseDir, "prismalens.db"));
17
- db.exec(`
14
+ const SCHEMA = `
18
15
  PRAGMA journal_mode = WAL;
19
16
  PRAGMA busy_timeout = 5000;
20
17
  PRAGMA foreign_keys = ON;
@@ -65,7 +62,44 @@ export function openDatabase(baseDir) {
65
62
  payload TEXT NOT NULL
66
63
  );
67
64
  CREATE INDEX IF NOT EXISTS idx_group_alerts ON group_alerts(group_id, id);
68
- `);
65
+ `;
66
+ const SCHEMA_CHECK = `
67
+ SELECT id, group_key, formed_by, created_at FROM groups LIMIT 1;
68
+ SELECT run_id, group_id, status, alertname, agent, repo, workspace_path, error, suppression_reason, created_at, updated_at, completed_at FROM runs LIMIT 1;
69
+ SELECT id, run_id, payload FROM events LIMIT 1;
70
+ SELECT run_id, payload FROM reports LIMIT 1;
71
+ SELECT id, group_id, late, payload FROM group_alerts LIMIT 1;
72
+ `;
73
+ export function openDatabase(baseDir) {
74
+ mkdirSync(baseDir, { recursive: true });
75
+ const dbPath = join(baseDir, "prismalens.db");
76
+ let db = new DatabaseSync(dbPath);
77
+ try {
78
+ db.exec(SCHEMA);
79
+ db.exec(SCHEMA_CHECK);
80
+ }
81
+ catch (err) {
82
+ const msg = err instanceof Error ? err.message : String(err);
83
+ if (!/no such column|no such table|has no column named/i.test(msg)) {
84
+ try {
85
+ db.close();
86
+ }
87
+ catch { }
88
+ throw err;
89
+ }
90
+ // Schema mismatch or corruption detected.
91
+ const backupPath = join(baseDir, `prismalens.db.bak-${Date.now()}`);
92
+ if (existsSync(`${dbPath}-wal`))
93
+ renameSync(`${dbPath}-wal`, `${backupPath}-wal`);
94
+ if (existsSync(`${dbPath}-shm`))
95
+ renameSync(`${dbPath}-shm`, `${backupPath}-shm`);
96
+ db.close();
97
+ renameSync(dbPath, backupPath);
98
+ console.warn(`[!] Workspace schema is incompatible. Backed up old database to ${backupPath} and recreated.`);
99
+ // Recreate a fresh database.
100
+ db = new DatabaseSync(dbPath);
101
+ db.exec(SCHEMA);
102
+ }
69
103
  return db;
70
104
  }
71
105
  //# sourceMappingURL=db.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"db.js","sourceRoot":"","sources":["../../../src/core/db.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6BAA6B;AAE7B,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,IAAI,YAAqC,CAAC;AAE1C,IAAI,CAAC;IACJ,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IACxC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;AACjC,CAAC;AAAC,MAAM,CAAC;IACR,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAe;IAC3C,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,MAAM,EAAE,GAAG,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC;IAE5D,EAAE,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmDP,CAAC,CAAC;IAEH,OAAO,EAAE,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"db.js","sourceRoot":"","sources":["../../../src/core/db.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,6BAA6B;AAE7B,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,IAAI,YAAqC,CAAC;AAE1C,IAAI,CAAC;IACJ,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,aAAa,CAAC,CAAC;IACxC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;AACjC,CAAC;AAAC,MAAM,CAAC;IACR,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACpD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACjB,CAAC;AAED,MAAM,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmDd,CAAC;AAEF,MAAM,YAAY,GAAG;;;;;;CAMpB,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,OAAe;IAC3C,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IAC9C,IAAI,EAAE,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;IAElC,IAAI,CAAC;QACJ,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChB,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACvB,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACvB,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7D,IAAI,CAAC,mDAAmD,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACpE,IAAI,CAAC;gBACJ,EAAE,CAAC,KAAK,EAAE,CAAC;YACZ,CAAC;YAAC,MAAM,CAAC,CAAA,CAAC;YACV,MAAM,GAAG,CAAC;QACX,CAAC;QAED,0CAA0C;QAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,qBAAqB,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACpE,IAAI,UAAU,CAAC,GAAG,MAAM,MAAM,CAAC;YAC9B,UAAU,CAAC,GAAG,MAAM,MAAM,EAAE,GAAG,UAAU,MAAM,CAAC,CAAC;QAClD,IAAI,UAAU,CAAC,GAAG,MAAM,MAAM,CAAC;YAC9B,UAAU,CAAC,GAAG,MAAM,MAAM,EAAE,GAAG,UAAU,MAAM,CAAC,CAAC;QAClD,EAAE,CAAC,KAAK,EAAE,CAAC;QACX,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;QAC/B,OAAO,CAAC,IAAI,CACX,mEAAmE,UAAU,iBAAiB,CAC9F,CAAC;QAEF,6BAA6B;QAC7B,EAAE,GAAG,IAAI,YAAY,CAAC,MAAM,CAAC,CAAC;QAC9B,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjB,CAAC;IAED,OAAO,EAAE,CAAC;AACX,CAAC"}
@@ -35,6 +35,8 @@ export interface ResolveInvestigationArgs {
35
35
  requestedSandbox?: string;
36
36
  /** Per-run turn ceiling for the default harness (issue #62). Forwarded to the engine. */
37
37
  maxTurns?: number;
38
+ /** If true, stops host settings/hooks/plugins/MCP servers from leaking into the rented harness. */
39
+ isolateSettings?: boolean;
38
40
  }
39
41
  /**
40
42
  * Resolve a seed alert + merged `pl.config.yaml` into the inputs
@@ -1 +1 @@
1
- {"version":3,"file":"run-investigation.d.ts","sourceRoot":"","sources":["../../../src/core/run-investigation.ts"],"names":[],"mappings":"AAyBA,OAAO,EAIN,KAAK,qBAAqB,EAC1B,KAAK,OAAO,EAEZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,YAAY,EAAE,qBAAqB,EAAE,CAAC;AAEtC,MAAM,WAAW,wBAAwB;IACxC,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACnC,kFAAkF;IAClF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAa3D;AAED,wBAAgB,oBAAoB,CACnC,IAAI,EAAE,wBAAwB,EAC9B,MAAM,EAAE,QAAQ,GACd,qBAAqB,CAwIvB;AAwCD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACxC,MAAM,GAAG,SAAS,CAIpB"}
1
+ {"version":3,"file":"run-investigation.d.ts","sourceRoot":"","sources":["../../../src/core/run-investigation.ts"],"names":[],"mappings":"AAyBA,OAAO,EAIN,KAAK,qBAAqB,EAC1B,KAAK,OAAO,EAEZ,MAAM,oBAAoB,CAAC;AAC5B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,YAAY,EAAE,qBAAqB,EAAE,CAAC;AAEtC,MAAM,WAAW,wBAAwB;IACxC,6EAA6E;IAC7E,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,8EAA8E;IAC9E,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;IACnC,kFAAkF;IAClF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yFAAyF;IACzF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mGAAmG;IACnG,eAAe,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,GAAG,OAAO,CAa3D;AAED,wBAAgB,oBAAoB,CACnC,IAAI,EAAE,wBAAwB,EAC9B,MAAM,EAAE,QAAQ,GACd,qBAAqB,CAyIvB;AAwCD;;;GAGG;AACH,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GACxC,MAAM,GAAG,SAAS,CAIpB"}
@@ -116,6 +116,7 @@ export function resolveInvestigation(args, config) {
116
116
  ? { maxBranches: config.agent.max_branches }
117
117
  : {}),
118
118
  ...(args.maxTurns ? { maxTurns: args.maxTurns } : {}),
119
+ ...(args.isolateSettings ? { isolateSettings: args.isolateSettings } : {}),
119
120
  model: config.agent.model,
120
121
  cwd,
121
122
  synth: {
@@ -1 +1 @@
1
- {"version":3,"file":"run-investigation.js","sourceRoot":"","sources":["../../../src/core/run-investigation.ts"],"names":[],"mappings":"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"}
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;QAClB,MAAM,CAAC,KAAK,CAAC,KAAK;QAClB,eAAe,CAAC,UAA2B,CAAC;QAC5C,EAAE,CAAC;IACJ,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC5C,MAAM,IAAI,KAAK,CACd,iEAAiE,CACjE,CAAC;IACH,CAAC;IAED,iFAAiF;IACjF,oEAAoE;IACpE,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI;QACxB,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QACf,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,CAAC;YACrC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;YAC3B,CAAC,CAAC,SAAS,CAAC;IACd,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG;QAC3B,CAAC,CAAC;YACA,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvD,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG;SACpB;QACF,CAAC,CAAC,SAAS,CAAC;IAEb,qEAAqE;IACrE,4EAA4E;IAC5E,0DAA0D;IAC1D,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC;IACzD,MAAM,cAAc,GAClB,IAAI,CAAC,cAA6C;QACnD,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC;IAC/B,MAAM,aAAa,GAAG,MAAM,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE5D,+EAA+E;IAC/E,6EAA6E;IAC7E,uEAAuE;IACvE,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAEpD,MAAM,SAAS,GAAG;QACjB,aAAa,EACZ,MAAM,CAAC,SAAS,CAAC,aAAa;YAC9B,sBAAsB,CAAC,SAAS,CAAC,aAAa;QAC/C,eAAe,EACd,MAAM,CAAC,SAAS,CAAC,eAAe;YAChC,sBAAsB,CAAC,SAAS,CAAC,eAAe;QACjD,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC,MAAM,IAAI,sBAAsB,CAAC,SAAS,CAAC,MAAM;KAC1E,CAAC;IAEF,MAAM,OAAO,GAAyB;QACrC,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,OAAO,EAAE,WAAW;QACpB,cAAc;QACd,GAAG,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClD,GAAG,CAAC,IAAI,CAAC,gBAAgB;YACxB,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE;YAC7C,CAAC,CAAC,EAAE,CAAC;QACN,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,8EAA8E;QAC9E,8EAA8E;QAC9E,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY;YAC5B,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY,EAAE;YAC5C,CAAC,CAAC,EAAE,CAAC;QACN,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACrD,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1E,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK;QACzB,GAAG;QACH,KAAK,EAAE;YACN,UAAU,EAAE,UAA2B;YACvC,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,EAAE;YAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,UAAU,EAAE,KAAK,CAAC,MAAM,KAAK,MAAM;SACnC;QACD,UAAU,EAAE;YACX,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc;YACxE,eAAe,EAAE,QAAQ,CACxB,OAAO,CAAC,GAAG,CAAC,eAAe;gBAC1B,OAAO,CAAC,GAAG,CAAC,eAAe;gBAC3B,sBAAsB,CAAC,KAAK,CAAC,OAAO,CACrC;SACD;QACD,aAAa,EAAE,sBAAsB,CAAC,oBAAoB;KAC1D,CAAC;IAEF,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC3C,OAAO,CAAC,OAAO,GAAG;YACjB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB,CAAC;YAC1C,SAAS;YACT,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC3B,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACzB,CAAC;IACH,CAAC;SAAM,CAAC;QACP,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC;QAC3B,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC;QAC9B,IAAI,OAAO;YAAE,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QACvC,IAAI,KAAK;YAAE,OAAO,CAAC,KAAK,GAAG,KAAK,CAAC;QACjC,IAAI,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAC/B,CAAC;IAED,OAAO,0BAA0B,CAAC,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;GAKG;AACH,SAAS,eAAe,CACvB,MAAmC;IAEnC,MAAM,GAAG,GAAkB;QAC1B,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACtE,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3D,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3D,CAAC;IACF,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACtD,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CACrB,IAA8B,EAC9B,MAAgB;IAEhB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,IAAI,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9E,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,MAAM,GAAG,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,OAAO;QACN,IAAI;QACJ,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnE,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAC/B,KAA0C;IAE1C,MAAM,MAAM,GAAG,CAAC,KAAK,EAAE,MAAM,IAAI,EAAE,CAA4B,CAAC;IAChE,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC;IAC9D,OAAO,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5D,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "prismalens",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "AI root-cause investigation from your terminal — point it at a repo, pipe it an alert, get an evidence-linked report",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",
@@ -42,9 +42,9 @@
42
42
  "json-rpc-2.0": "^1.7.1",
43
43
  "yaml": "^2.9.0",
44
44
  "zod": "^3.25.76",
45
+ "@prismalens/contracts": "0.0.2",
45
46
  "@prismalens/config": "0.1.0",
46
- "@prismalens/engine": "0.1.0",
47
- "@prismalens/contracts": "0.0.2"
47
+ "@prismalens/engine": "0.1.1"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@types/node": "^24.13.2",