@oddessentials/odd-ai-reviewers 1.11.0 → 1.12.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.
Files changed (63) hide show
  1. package/README.md +16 -9
  2. package/dist/benchmark/adapter.d.ts.map +1 -1
  3. package/dist/benchmark/adapter.js +4 -2
  4. package/dist/benchmark/adapter.js.map +1 -1
  5. package/dist/cache/store.d.ts.map +1 -1
  6. package/dist/cache/store.js +26 -2
  7. package/dist/cache/store.js.map +1 -1
  8. package/dist/cli/commands/local-review.d.ts +13 -2
  9. package/dist/cli/commands/local-review.d.ts.map +1 -1
  10. package/dist/cli/commands/local-review.js +164 -33
  11. package/dist/cli/commands/local-review.js.map +1 -1
  12. package/dist/cli/execution-plan.d.ts +118 -0
  13. package/dist/cli/execution-plan.d.ts.map +1 -0
  14. package/dist/cli/execution-plan.js +260 -0
  15. package/dist/cli/execution-plan.js.map +1 -0
  16. package/dist/config/schemas.d.ts +103 -21
  17. package/dist/config/schemas.d.ts.map +1 -1
  18. package/dist/config/schemas.js +177 -10
  19. package/dist/config/schemas.js.map +1 -1
  20. package/dist/config.d.ts +8 -3
  21. package/dist/config.d.ts.map +1 -1
  22. package/dist/config.js +15 -6
  23. package/dist/config.js.map +1 -1
  24. package/dist/main.d.ts.map +1 -1
  25. package/dist/main.js +79 -8
  26. package/dist/main.js.map +1 -1
  27. package/dist/phases/execute.d.ts +3 -0
  28. package/dist/phases/execute.d.ts.map +1 -1
  29. package/dist/phases/execute.js +17 -5
  30. package/dist/phases/execute.js.map +1 -1
  31. package/dist/phases/index.d.ts +1 -1
  32. package/dist/phases/index.d.ts.map +1 -1
  33. package/dist/phases/index.js +1 -1
  34. package/dist/phases/index.js.map +1 -1
  35. package/dist/phases/report.d.ts +28 -4
  36. package/dist/phases/report.d.ts.map +1 -1
  37. package/dist/phases/report.js +86 -36
  38. package/dist/phases/report.js.map +1 -1
  39. package/dist/report/ado.d.ts +2 -1
  40. package/dist/report/ado.d.ts.map +1 -1
  41. package/dist/report/ado.js +9 -5
  42. package/dist/report/ado.js.map +1 -1
  43. package/dist/report/finding-validator.d.ts +1 -4
  44. package/dist/report/finding-validator.d.ts.map +1 -1
  45. package/dist/report/finding-validator.js +23 -54
  46. package/dist/report/finding-validator.js.map +1 -1
  47. package/dist/report/framework-pattern-filter.d.ts +1 -1
  48. package/dist/report/framework-pattern-filter.d.ts.map +1 -1
  49. package/dist/report/framework-pattern-filter.js +114 -99
  50. package/dist/report/framework-pattern-filter.js.map +1 -1
  51. package/dist/report/github.d.ts +2 -1
  52. package/dist/report/github.d.ts.map +1 -1
  53. package/dist/report/github.js +9 -5
  54. package/dist/report/github.js.map +1 -1
  55. package/dist/report/terminal.d.ts +42 -4
  56. package/dist/report/terminal.d.ts.map +1 -1
  57. package/dist/report/terminal.js +36 -8
  58. package/dist/report/terminal.js.map +1 -1
  59. package/dist/report/user-suppressions.d.ts +74 -0
  60. package/dist/report/user-suppressions.d.ts.map +1 -0
  61. package/dist/report/user-suppressions.js +264 -0
  62. package/dist/report/user-suppressions.js.map +1 -0
  63. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"local-review.js","sourceRoot":"","sources":["../../../src/cli/commands/local-review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-review.js","sourceRoot":"","sources":["../../../src/cli/commands/local-review.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,118 @@
1
+ /**
2
+ * Execution Plan Module (FR-001 through FR-007)
3
+ *
4
+ * Produces a single, immutable ExecutionPlan object that is the sole source of truth
5
+ * for all downstream code paths (dry-run, cost-only, dependency check, execution).
6
+ *
7
+ * Pipeline: Parse -> Validate -> BuildExecutionPlan -> DependencyCheck -> Execute
8
+ *
9
+ * No downstream consumer may read raw CLI flags — they operate on the plan.
10
+ */
11
+ import type { Config, AgentId } from '../config/schemas.js';
12
+ /**
13
+ * Recursively makes all properties readonly.
14
+ * Arrays become ReadonlyArrays, objects get readonly properties.
15
+ */
16
+ export type DeepReadonly<T> = T extends (infer U)[] ? readonly DeepReadonly<U>[] : T extends object ? {
17
+ readonly [K in keyof T]: DeepReadonly<T[K]>;
18
+ } : T;
19
+ /**
20
+ * Machine-readable status for all JSON/SARIF output.
21
+ * Strict 1:1 mapping with exit codes.
22
+ */
23
+ export type RunStatus = 'complete' | 'gating_failed' | 'config_error' | 'incomplete';
24
+ /**
25
+ * The ONLY path to produce an exit code.
26
+ * No call site may hardcode an exit code number directly.
27
+ */
28
+ export declare function exitCodeFromStatus(status: RunStatus): number;
29
+ /**
30
+ * Execution mode for the review.
31
+ */
32
+ export type ExecutionMode = 'execute' | 'dry-run' | 'cost-only';
33
+ /**
34
+ * A pass with zero agents has been removed and recorded here.
35
+ */
36
+ export interface SkippedPass {
37
+ readonly name: string;
38
+ readonly reason: string;
39
+ }
40
+ /**
41
+ * A single pass within the execution plan with its resolved agents.
42
+ */
43
+ export interface PlannedPass {
44
+ readonly name: string;
45
+ readonly agents: readonly AgentId[];
46
+ readonly required: boolean;
47
+ }
48
+ /**
49
+ * Gating configuration snapshot for the plan.
50
+ */
51
+ export interface PlanGating {
52
+ readonly enabled: boolean;
53
+ readonly failOnSeverity: string;
54
+ readonly driftGate: boolean;
55
+ }
56
+ /**
57
+ * Limits configuration snapshot for the plan.
58
+ */
59
+ export interface PlanLimits {
60
+ readonly maxDiffLines: number;
61
+ readonly maxFiles: number;
62
+ readonly maxTokensPerPr: number;
63
+ readonly maxUsdPerPr: number;
64
+ }
65
+ /**
66
+ * Immutable execution plan — single source of truth for all downstream consumers.
67
+ *
68
+ * Structural invariant: No pass may have an empty agents list.
69
+ */
70
+ export interface ExecutionPlan {
71
+ readonly mode: ExecutionMode;
72
+ readonly passes: readonly PlannedPass[];
73
+ readonly skippedPasses: readonly SkippedPass[];
74
+ readonly provider: string | null;
75
+ readonly model: string | null;
76
+ readonly limits: PlanLimits;
77
+ readonly gating: PlanGating;
78
+ readonly configSource: string;
79
+ readonly schemaVersion: number;
80
+ }
81
+ /**
82
+ * Options for building an execution plan from CLI args and config.
83
+ */
84
+ export interface BuildPlanOptions {
85
+ /** The loaded configuration */
86
+ config: Config;
87
+ /** Execution mode */
88
+ mode: ExecutionMode;
89
+ /** --pass filter (undefined = all passes) */
90
+ passFilter?: string;
91
+ /** --agent filter (undefined = all agents) */
92
+ agentFilter?: string;
93
+ /** Resolved provider name */
94
+ provider?: string | null;
95
+ /** Resolved model name */
96
+ model?: string | null;
97
+ /** Config source description (file path or 'zero-config') */
98
+ configSource: string;
99
+ }
100
+ /**
101
+ * Build an immutable execution plan from config and CLI options.
102
+ *
103
+ * Enforces all invariants:
104
+ * - Pass/agent validation against registry
105
+ * - Provider compatibility filtering
106
+ * - Empty-pass rule (required+empty -> ConfigError; optional+empty -> skipped)
107
+ * - Combined --pass + --agent narrowing (FR-007)
108
+ *
109
+ * @throws ConfigError on validation failures (exit code 2)
110
+ */
111
+ export declare function buildExecutionPlan(options: BuildPlanOptions): DeepReadonly<ExecutionPlan>;
112
+ /**
113
+ * Safe-field allowlist for plan serialization.
114
+ * Only these fields appear in serialized output — everything else is excluded.
115
+ * Keys are emitted in alphabetical order at every level.
116
+ */
117
+ export declare function serializeExecutionPlan(plan: DeepReadonly<ExecutionPlan>): string;
118
+ //# sourceMappingURL=execution-plan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-plan.d.ts","sourceRoot":"","sources":["../../src/cli/execution-plan.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,260 @@
1
+ /**
2
+ * Execution Plan Module (FR-001 through FR-007)
3
+ *
4
+ * Produces a single, immutable ExecutionPlan object that is the sole source of truth
5
+ * for all downstream code paths (dry-run, cost-only, dependency check, execution).
6
+ *
7
+ * Pipeline: Parse -> Validate -> BuildExecutionPlan -> DependencyCheck -> Execute
8
+ *
9
+ * No downstream consumer may read raw CLI flags — they operate on the plan.
10
+ */
11
+ import { AGENT_REGISTRY, getAgentById, getCompatibleAgents, } from '../config/schemas.js';
12
+ import { ConfigError, ConfigErrorCode } from '../types/errors.js';
13
+ import { assertNever } from '../types/assert-never.js';
14
+ /**
15
+ * The ONLY path to produce an exit code.
16
+ * No call site may hardcode an exit code number directly.
17
+ */
18
+ export function exitCodeFromStatus(status) {
19
+ switch (status) {
20
+ case 'complete':
21
+ return 0;
22
+ case 'gating_failed':
23
+ return 1;
24
+ case 'config_error':
25
+ return 2;
26
+ case 'incomplete':
27
+ return 3;
28
+ default:
29
+ return assertNever(status);
30
+ }
31
+ }
32
+ // =============================================================================
33
+ // Validation Helpers
34
+ // =============================================================================
35
+ /**
36
+ * Validate --pass flag against configured passes.
37
+ * Throws ConfigError if unknown.
38
+ */
39
+ function validatePassFilter(passFilter, passes) {
40
+ const match = passes.find((p) => p.name === passFilter);
41
+ if (!match) {
42
+ const available = passes.map((p) => p.name).join(', ');
43
+ throw new ConfigError(`Unknown pass '${passFilter}'. Available: ${available}`, ConfigErrorCode.INVALID_VALUE, { field: 'pass', expected: available, actual: passFilter });
44
+ }
45
+ if (!match.enabled) {
46
+ throw new ConfigError(`Pass '${passFilter}' is disabled in configuration`, ConfigErrorCode.INVALID_VALUE, { field: 'pass', actual: passFilter });
47
+ }
48
+ return match;
49
+ }
50
+ /**
51
+ * Validate --agent flag against the agent registry.
52
+ * Throws ConfigError if unknown.
53
+ */
54
+ function validateAgentFilter(agentFilter) {
55
+ const entry = getAgentById(agentFilter);
56
+ if (!entry) {
57
+ const validIds = AGENT_REGISTRY.map((a) => a.id).join(', ');
58
+ throw new ConfigError(`Unknown agent '${agentFilter}'. Valid: ${validIds}`, ConfigErrorCode.INVALID_VALUE, { field: 'agent', expected: validIds, actual: agentFilter });
59
+ }
60
+ return entry;
61
+ }
62
+ /**
63
+ * Validate pass composition at config time.
64
+ * Checks for unknown agents and duplicates within passes.
65
+ */
66
+ function validatePassComposition(passes) {
67
+ for (const pass of passes) {
68
+ // Check for unknown agents
69
+ for (const agentId of pass.agents) {
70
+ if (!getAgentById(agentId)) {
71
+ const validIds = AGENT_REGISTRY.map((a) => a.id).join(', ');
72
+ throw new ConfigError(`Unknown agent '${agentId}' in pass '${pass.name}'. Valid: ${validIds}`, ConfigErrorCode.INVALID_VALUE, { field: `passes.${pass.name}.agents`, expected: validIds, actual: agentId });
73
+ }
74
+ }
75
+ // Check for duplicates
76
+ const seen = new Set();
77
+ for (const agentId of pass.agents) {
78
+ if (seen.has(agentId)) {
79
+ throw new ConfigError(`Duplicate agent '${agentId}' in pass '${pass.name}'`, ConfigErrorCode.INVALID_VALUE, { field: `passes.${pass.name}.agents`, actual: agentId });
80
+ }
81
+ seen.add(agentId);
82
+ }
83
+ }
84
+ }
85
+ // =============================================================================
86
+ // Build Execution Plan
87
+ // =============================================================================
88
+ /**
89
+ * Build an immutable execution plan from config and CLI options.
90
+ *
91
+ * Enforces all invariants:
92
+ * - Pass/agent validation against registry
93
+ * - Provider compatibility filtering
94
+ * - Empty-pass rule (required+empty -> ConfigError; optional+empty -> skipped)
95
+ * - Combined --pass + --agent narrowing (FR-007)
96
+ *
97
+ * @throws ConfigError on validation failures (exit code 2)
98
+ */
99
+ export function buildExecutionPlan(options) {
100
+ const { config, mode, passFilter, agentFilter, provider, model, configSource } = options;
101
+ // 1. Validate pass composition at config time
102
+ validatePassComposition(config.passes);
103
+ // 2. Start with enabled passes
104
+ let candidatePasses = config.passes.filter((p) => p.enabled);
105
+ // 3. Apply --pass filter
106
+ if (passFilter) {
107
+ const matchedPass = validatePassFilter(passFilter, config.passes);
108
+ candidatePasses = [matchedPass];
109
+ }
110
+ // 4. Validate --agent filter against registry
111
+ if (agentFilter) {
112
+ validateAgentFilter(agentFilter);
113
+ }
114
+ // 5. Get compatible agents for the provider
115
+ const compatibleAgents = getCompatibleAgents(provider);
116
+ const compatibleIds = new Set(compatibleAgents.map((a) => a.id));
117
+ const requestedAgentId = agentFilter;
118
+ // 6. Build planned passes with agent filtering
119
+ const plannedPasses = [];
120
+ const skippedPasses = [];
121
+ for (const pass of candidatePasses) {
122
+ // Filter agents by provider compatibility
123
+ let agents = pass.agents.filter((id) => compatibleIds.has(id));
124
+ // Log provider-incompatible agents as excluded (non-required passes only)
125
+ const excludedByProvider = pass.agents.filter((id) => !compatibleIds.has(id));
126
+ if (excludedByProvider.length > 0 && pass.required) {
127
+ // Required pass with incompatible agents -> config error
128
+ const incompatible = excludedByProvider.join(', ');
129
+ throw new ConfigError(`Required pass '${pass.name}' contains agents incompatible with provider '${provider}': ${incompatible}`, ConfigErrorCode.INVALID_VALUE, { field: `passes.${pass.name}.agents`, actual: incompatible });
130
+ }
131
+ // Apply --agent filter within pass
132
+ if (agentFilter) {
133
+ const passContainsRequestedAgent = pass.agents.includes(requestedAgentId);
134
+ if (passFilter &&
135
+ passContainsRequestedAgent &&
136
+ !compatibleIds.has(requestedAgentId)) {
137
+ throw new ConfigError(`Agent '${agentFilter}' in pass '${passFilter}' is incompatible with provider '${provider}'`, ConfigErrorCode.INVALID_VALUE, { field: 'agent', actual: agentFilter });
138
+ }
139
+ const hasAgent = agents.some((id) => id === agentFilter);
140
+ if (hasAgent) {
141
+ agents = agents.filter((id) => id === agentFilter);
142
+ }
143
+ else if (passFilter) {
144
+ // Combined: --pass + --agent, agent not in the selected pass
145
+ const otherPasses = config.passes
146
+ .filter((p) => p.enabled && p.agents.includes(agentFilter))
147
+ .map((p) => p.name);
148
+ const availableIn = otherPasses.length > 0 ? ` It is available in: ${otherPasses.join(', ')}` : '';
149
+ throw new ConfigError(`Agent '${agentFilter}' is not configured in pass '${passFilter}'.${availableIn}`, ConfigErrorCode.INVALID_VALUE, { field: 'agent', actual: agentFilter });
150
+ }
151
+ else {
152
+ // Agent not in this pass, skip it (will be caught by check below if in no pass)
153
+ agents = [];
154
+ }
155
+ }
156
+ // Empty-pass rule
157
+ if (agents.length === 0) {
158
+ if (pass.required) {
159
+ throw new ConfigError(`Required pass '${pass.name}' has no runnable agents after filtering`, ConfigErrorCode.INVALID_VALUE, { field: `passes.${pass.name}` });
160
+ }
161
+ const reason = excludedByProvider.length > 0
162
+ ? `Pass '${pass.name}' skipped: no agents compatible with provider '${provider}'`
163
+ : `Pass '${pass.name}' skipped: no matching agents after filtering`;
164
+ skippedPasses.push({ name: pass.name, reason });
165
+ continue;
166
+ }
167
+ plannedPasses.push({
168
+ name: pass.name,
169
+ agents: agents,
170
+ required: pass.required,
171
+ });
172
+ }
173
+ // 7. If --agent was specified but found in no pass, error
174
+ if (agentFilter && !passFilter && plannedPasses.length === 0) {
175
+ // Check if the agent exists in any configured pass at all
176
+ const passesWithAgent = config.passes
177
+ .filter((p) => p.agents.includes(agentFilter))
178
+ .map((p) => p.name);
179
+ if (passesWithAgent.length === 0) {
180
+ throw new ConfigError(`Agent '${agentFilter}' not configured in any pass`, ConfigErrorCode.INVALID_VALUE, { field: 'agent', actual: agentFilter });
181
+ }
182
+ if (!compatibleIds.has(agentFilter)) {
183
+ throw new ConfigError(`Agent '${agentFilter}' is incompatible with provider '${provider}' and cannot run in configured passes: ${passesWithAgent.join(', ')}`, ConfigErrorCode.INVALID_VALUE, { field: 'agent', actual: agentFilter });
184
+ }
185
+ }
186
+ // 8. Assert structural invariant: no pass with empty agents
187
+ for (const pass of plannedPasses) {
188
+ if (pass.agents.length === 0) {
189
+ throw new Error(`Invariant violation: pass '${pass.name}' has empty agents list in execution plan`);
190
+ }
191
+ }
192
+ // 9. Build limits snapshot
193
+ const limits = {
194
+ maxDiffLines: config.limits.max_diff_lines,
195
+ maxFiles: config.limits.max_files,
196
+ maxTokensPerPr: config.limits.max_tokens_per_pr,
197
+ maxUsdPerPr: config.limits.max_usd_per_pr,
198
+ };
199
+ // 10. Build gating snapshot
200
+ const gating = {
201
+ enabled: config.gating.enabled,
202
+ failOnSeverity: config.gating.fail_on_severity,
203
+ driftGate: config.gating.drift_gate,
204
+ };
205
+ const plan = {
206
+ mode,
207
+ passes: plannedPasses,
208
+ skippedPasses,
209
+ provider: provider ?? null,
210
+ model: model ?? null,
211
+ limits,
212
+ gating,
213
+ configSource,
214
+ schemaVersion: config.version,
215
+ };
216
+ return plan;
217
+ }
218
+ // =============================================================================
219
+ // Plan Serialization (Canonical, Redacted)
220
+ // =============================================================================
221
+ /**
222
+ * Safe-field allowlist for plan serialization.
223
+ * Only these fields appear in serialized output — everything else is excluded.
224
+ * Keys are emitted in alphabetical order at every level.
225
+ */
226
+ export function serializeExecutionPlan(plan) {
227
+ const canonical = {
228
+ configSource: plan.configSource,
229
+ gating: {
230
+ driftGate: plan.gating.driftGate,
231
+ enabled: plan.gating.enabled,
232
+ failOnSeverity: plan.gating.failOnSeverity,
233
+ },
234
+ limits: {
235
+ maxDiffLines: plan.limits.maxDiffLines,
236
+ maxFiles: plan.limits.maxFiles,
237
+ maxTokensPerPr: plan.limits.maxTokensPerPr,
238
+ maxUsdPerPr: plan.limits.maxUsdPerPr,
239
+ },
240
+ mode: plan.mode,
241
+ model: plan.model,
242
+ passes: plan.passes.map((p) => ({
243
+ agents: [...p.agents].sort(),
244
+ name: p.name,
245
+ required: p.required,
246
+ })),
247
+ provider: plan.provider,
248
+ schemaVersion: plan.schemaVersion,
249
+ ...(plan.skippedPasses.length > 0
250
+ ? {
251
+ skippedPasses: plan.skippedPasses.map((s) => ({
252
+ name: s.name,
253
+ reason: s.reason,
254
+ })),
255
+ }
256
+ : {}),
257
+ };
258
+ return JSON.stringify(canonical, null, 2);
259
+ }
260
+ //# sourceMappingURL=execution-plan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution-plan.js","sourceRoot":"","sources":["../../src/cli/execution-plan.ts"],"names":[],"mappings":"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"}