@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
package/dist/main.js CHANGED
@@ -28,7 +28,10 @@ import { startCheckRun, completeCheckRun } from './report/github.js';
28
28
  import { buildRouterEnv } from './agents/security.js';
29
29
  import { setupSignalHandlers } from './cli/signals.js';
30
30
  import { hashConfig } from './cache/key.js';
31
- import { runPreflightChecks, executeAllPasses, processFindings, dispatchReport, getPostNormalizationFindings, checkGating, GatingError, } from './phases/index.js';
31
+ import { runPreflightChecks, executeAllPasses, FatalExecutionError, processFindings, dispatchReport, getPostNormalizationFindings, checkGating, GatingError, } from './phases/index.js';
32
+ import { loadBaseBranchSuppressions } from './report/user-suppressions.js';
33
+ import { exitCodeFromStatus } from './cli/execution-plan.js';
34
+ import { ConfigError } from './types/errors.js';
32
35
  /**
33
36
  * Default exit handler that calls process.exit
34
37
  */
@@ -619,18 +622,21 @@ export function detectPlatform(env) {
619
622
  export async function runReview(options, deps = {}) {
620
623
  const env = deps.env ?? process.env;
621
624
  const exitHandler = deps.exitHandler ?? defaultExitHandler;
625
+ const routerEnv = buildRouterEnv(env);
626
+ const platform = detectPlatform(routerEnv);
622
627
  console.log('[router] Starting AI Review');
623
628
  console.log(`[router] Repository: ${options.repo}`);
624
629
  console.log(`[router] Diff: ${options.base}...${options.head}`);
625
630
  // === PHASE 1: Setup & Context Building ===
626
- const routerEnv = buildRouterEnv(env);
627
- const config = await loadConfig(options.repo);
631
+ const isCIMode = platform === 'github' || platform === 'ado';
632
+ const config = await loadConfig(options.repo, {
633
+ ignoreSuppressions: isCIMode,
634
+ });
628
635
  console.log(`[router] Loaded config with ${config.passes.length} passes`);
629
636
  const configHash = hashConfig(config);
630
637
  // Load .reviewignore patterns
631
638
  const reviewIgnoreResult = await loadReviewIgnore(options.repo);
632
639
  const reviewIgnorePatterns = reviewIgnoreResult.patterns;
633
- const platform = detectPlatform(routerEnv);
634
640
  console.log(`[router] Detected platform: ${platform}`);
635
641
  let checkRunId;
636
642
  let checkRunContext;
@@ -641,6 +647,13 @@ export async function runReview(options, deps = {}) {
641
647
  await completeCheckRun({ ...checkRunContext, checkRunId }, { conclusion, title, summary });
642
648
  checkRunFinalized = true;
643
649
  };
650
+ const handleConfigError = async (configError) => {
651
+ const configErrorMsg = configError.message;
652
+ console.error(`[router] ❌ Configuration error: ${configErrorMsg}`);
653
+ const summary = `Configuration error during review.\n\nError: ${configErrorMsg}`;
654
+ await finalizeCheckRun('failure', 'AI Review config error', summary);
655
+ exitHandler(exitCodeFromStatus('config_error'));
656
+ };
644
657
  const shouldHandleSignals = platform === 'github' && deps.exitHandler === undefined;
645
658
  if (shouldHandleSignals) {
646
659
  setupSignalHandlers({
@@ -820,7 +833,7 @@ export async function runReview(options, deps = {}) {
820
833
  const summary = 'Preflight checks failed. Review did not run.\n' +
821
834
  preflightResult.errors.map((error) => `- ${error}`).join('\n');
822
835
  await finalizeCheckRun('failure', 'AI Review preflight failed', summary);
823
- exitHandler(1);
836
+ exitHandler(exitCodeFromStatus('config_error'));
824
837
  return; // For type safety when exitHandler doesn't terminate
825
838
  }
826
839
  // Log preflight warnings (non-fatal diagnostics, e.g. optional agents missing keys)
@@ -835,6 +848,18 @@ export async function runReview(options, deps = {}) {
835
848
  if (preflightResult.resolved) {
836
849
  agentContext.effectiveModel = preflightResult.resolved.model;
837
850
  }
851
+ // FR-022: Load suppressions from base branch in CI mode (security constraint).
852
+ // In CI, suppression rules ALWAYS come from the BASE branch config, never from the PR branch.
853
+ // This prevents attackers from smuggling suppressions into fork PRs to hide vulnerabilities.
854
+ // Any suppressions in the PR branch config are unconditionally replaced.
855
+ let ciConfig = config;
856
+ if (isCIMode) {
857
+ const baseBranchSuppressions = loadBaseBranchSuppressions(options.repo, reviewRefs.baseSha);
858
+ // Always override PR-branch suppressions with base-branch suppressions.
859
+ // If base branch has no suppressions, this clears any PR-branch suppressions too —
860
+ // that's intentional: untrusted PR branches must not control suppression rules.
861
+ ciConfig = { ...config, suppressions: baseBranchSuppressions };
862
+ }
838
863
  try {
839
864
  // === PHASE 5: Execute Agent Passes ===
840
865
  const executeResult = await executeAllPasses(config, agentContext, routerEnv, budgetCheck, {
@@ -844,7 +869,8 @@ export async function runReview(options, deps = {}) {
844
869
  });
845
870
  // === PHASE 6: Process & Report Findings ===
846
871
  // (012-fix-agent-result-regressions) - Now passing completeFindings and partialFindings separately
847
- const { sorted, partialSorted } = processFindings(executeResult.completeFindings, executeResult.partialFindings, executeResult.allResults, executeResult.skippedAgents, diff.files, agentContext.prDescription);
872
+ // FR-022: Pass config with suppressions and CI mode for breadth enforcement
873
+ const { sorted, partialSorted } = processFindings(executeResult.completeFindings, executeResult.partialFindings, executeResult.allResults, executeResult.skippedAgents, diff.files, agentContext.prDescription, ciConfig, isCIMode ? 'ci' : 'local');
848
874
  const reportResult = await dispatchReport(platform, sorted, partialSorted, config, diff.files, routerEnv, prContext.number, {
849
875
  dryRun: options.dryRun,
850
876
  owner: options.owner,
@@ -853,6 +879,7 @@ export async function runReview(options, deps = {}) {
853
879
  head: reviewRefs.headSha,
854
880
  githubHeadSha,
855
881
  checkRunId,
882
+ runStatus: 'complete',
856
883
  });
857
884
  if (platform === 'github' && reportResult?.checkRunCompleted) {
858
885
  checkRunFinalized = true;
@@ -868,14 +895,58 @@ export async function runReview(options, deps = {}) {
868
895
  }
869
896
  catch (error) {
870
897
  if (error instanceof GatingError) {
871
- exitHandler(1);
898
+ exitHandler(exitCodeFromStatus('gating_failed'));
899
+ return;
900
+ }
901
+ // FR-022: Suppression breadth/allowlist violations throw ConfigError from processFindings().
902
+ // These are config-level errors, not execution failures — exit with config_error (2).
903
+ if (error instanceof ConfigError) {
904
+ await handleConfigError(error);
872
905
  return;
873
906
  }
874
907
  const errorMsg = error instanceof Error ? error.message : String(error);
908
+ // FR-021: When a FatalExecutionError carries partial results, report them
909
+ // in degraded mode with a 'neutral' check run conclusion instead of 'failure'.
910
+ if (error instanceof FatalExecutionError && error.partialResults) {
911
+ console.warn(`[router] ⚠ Incomplete review: ${errorMsg}. ` +
912
+ `Reporting ${error.partialResults.completeFindings.length} findings from completed agents.`);
913
+ // Process and report partial findings through the standard pipeline
914
+ let sorted = error.partialResults.completeFindings;
915
+ let partialSorted = error.partialResults.partialFindings;
916
+ try {
917
+ const processed = processFindings(error.partialResults.completeFindings, error.partialResults.partialFindings, error.partialResults.allResults, error.partialResults.skippedAgents, diff.files, agentContext.prDescription, ciConfig, isCIMode ? 'ci' : 'local');
918
+ sorted = processed.sorted;
919
+ partialSorted = processed.partialSorted;
920
+ }
921
+ catch (processingError) {
922
+ if (processingError instanceof ConfigError) {
923
+ await handleConfigError(processingError);
924
+ return;
925
+ }
926
+ throw processingError;
927
+ }
928
+ // FR-021: Pass runStatus: 'incomplete' so reporters use neutral/pending conclusion.
929
+ // The reporter handles the conclusion directly — no separate finalizeCheckRun override needed.
930
+ await dispatchReport(platform, sorted, partialSorted, config, diff.files, routerEnv, prContext.number, {
931
+ dryRun: options.dryRun,
932
+ owner: options.owner,
933
+ repoName: options.repoName,
934
+ pr: options.pr,
935
+ head: reviewRefs.headSha,
936
+ githubHeadSha,
937
+ checkRunId,
938
+ runStatus: 'incomplete',
939
+ });
940
+ // FR-021: Exit code 3 for incomplete reviews — gating is NOT evaluated
941
+ exitHandler(exitCodeFromStatus('incomplete'));
942
+ return;
943
+ }
944
+ // Fatal failure with no preserved findings — this is a hard crash, not a degraded run.
945
+ // Use config_error (exit 2) to distinguish from incomplete (exit 3, which has reportable findings).
875
946
  console.error(`[router] ❌ Review failed: ${errorMsg}`);
876
947
  const summary = 'The AI review failed before reporting results.\n' + `Error: ${errorMsg}`;
877
948
  await finalizeCheckRun('failure', 'AI Review failed', summary);
878
- exitHandler(1);
949
+ exitHandler(exitCodeFromStatus('config_error'));
879
950
  }
880
951
  }
881
952
  // Only parse arguments when run directly (not when imported for testing)
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
@@ -14,8 +14,11 @@ export interface SkippedAgent {
14
14
  }
15
15
  export declare class FatalExecutionError extends Error {
16
16
  readonly code: 'BUDGET_EXCEEDED' | 'POLICY_VIOLATION' | 'AGENT_FAILURE' | 'AGENT_CRASH';
17
+ /** Accumulated findings from agents that completed before the failure (FR-021) */
18
+ readonly partialResults?: ExecuteResult;
17
19
  constructor(code: FatalExecutionError['code'], message: string, options?: {
18
20
  cause?: Error;
21
+ partialResults?: ExecuteResult;
19
22
  });
20
23
  }
21
24
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/phases/execute.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAS7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,IAAI,EAAE,iBAAiB,GAAG,kBAAkB,GAAG,eAAe,GAAG,aAAa,CAAC;gBAE5E,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE;CAK5F;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,UAAU,GAAG,SAAS,EACjE,QAAQ,EAAE,OAAO,EAAE,EACnB,UAAU,EAAE,CAAC,GACZ,CAAC,OAAO,GAAG;IAAE,UAAU,EAAE,CAAC,CAAA;CAAE,CAAC,EAAE,CAEjC;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,wEAAwE;IACxE,gBAAgB,EAAE,OAAO,EAAE,CAAC;IAC5B,iFAAiF;IACjF,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,aAAa,EAAE,YAAY,EAAE,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAC7C,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CA8JxB"}
1
+ {"version":3,"file":"execute.d.ts","sourceRoot":"","sources":["../../src/phases/execute.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAS7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,qBAAa,mBAAoB,SAAQ,KAAK;IAC5C,QAAQ,CAAC,IAAI,EAAE,iBAAiB,GAAG,kBAAkB,GAAG,eAAe,GAAG,aAAa,CAAC;IACxF,kFAAkF;IAClF,QAAQ,CAAC,cAAc,CAAC,EAAE,aAAa,CAAC;gBAGtC,IAAI,EAAE,mBAAmB,CAAC,MAAM,CAAC,EACjC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAC,cAAc,CAAC,EAAE,aAAa,CAAA;KAAE;CAO9D;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,UAAU,GAAG,SAAS,EACjE,QAAQ,EAAE,OAAO,EAAE,EACnB,UAAU,EAAE,CAAC,GACZ,CAAC,OAAO,GAAG;IAAE,UAAU,EAAE,CAAC,CAAA;CAAE,CAAC,EAAE,CAEjC;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,aAAa;IAC5B,wEAAwE;IACxE,gBAAgB,EAAE,OAAO,EAAE,CAAC;IAC5B,iFAAiF;IACjF,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B,UAAU,EAAE,WAAW,EAAE,CAAC;IAC1B,aAAa,EAAE,YAAY,EAAE,CAAC;CAC/B;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,YAAY,EAC1B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAC7C,WAAW,EAAE,WAAW,EACxB,OAAO,EAAE,cAAc,GACtB,OAAO,CAAC,aAAa,CAAC,CAmKxB"}
@@ -14,10 +14,13 @@ import { generateCacheKey } from '../cache/key.js';
14
14
  import { isMainBranchPush, isAgentForbiddenOnMain } from '../policy.js';
15
15
  export class FatalExecutionError extends Error {
16
16
  code;
17
+ /** Accumulated findings from agents that completed before the failure (FR-021) */
18
+ partialResults;
17
19
  constructor(code, message, options) {
18
- super(message, options);
20
+ super(message, options?.cause ? { cause: options.cause } : undefined);
19
21
  this.name = 'FatalExecutionError';
20
22
  this.code = code;
23
+ this.partialResults = options?.partialResults;
21
24
  }
22
25
  }
23
26
  /**
@@ -61,7 +64,9 @@ export async function executeAllPasses(config, agentContext, routerEnv, budgetCh
61
64
  if (pass.required) {
62
65
  const message = `Required pass ${pass.name} blocked by budget limit`;
63
66
  console.error(`[router] ❌ ${message}`);
64
- throw new FatalExecutionError('BUDGET_EXCEEDED', message);
67
+ throw new FatalExecutionError('BUDGET_EXCEEDED', message, {
68
+ partialResults: { completeFindings, partialFindings, allResults, skippedAgents },
69
+ });
65
70
  }
66
71
  console.log(`[router] Skipping optional paid LLM pass due to budget: ${pass.name}`);
67
72
  for (const agent of agents) {
@@ -80,7 +85,9 @@ export async function executeAllPasses(config, agentContext, routerEnv, budgetCh
80
85
  if (isMainBranchPush(routerEnv) && isAgentForbiddenOnMain(agent.id)) {
81
86
  const message = `Policy violation: in-process LLM agent "${agent.id}" is forbidden on direct main push`;
82
87
  console.error(`[router] ${message}`);
83
- throw new FatalExecutionError('POLICY_VIOLATION', message);
88
+ throw new FatalExecutionError('POLICY_VIOLATION', message, {
89
+ partialResults: { completeFindings, partialFindings, allResults, skippedAgents },
90
+ });
84
91
  }
85
92
  const scopedContext = {
86
93
  ...agentContext,
@@ -134,7 +141,9 @@ export async function executeAllPasses(config, agentContext, routerEnv, budgetCh
134
141
  if (pass.required) {
135
142
  const message = `Required agent ${agent.name} failed: ${result.error}`;
136
143
  console.error(`[router] ❌ ${message}`);
137
- throw new FatalExecutionError('AGENT_FAILURE', message);
144
+ throw new FatalExecutionError('AGENT_FAILURE', message, {
145
+ partialResults: { completeFindings, partialFindings, allResults, skippedAgents },
146
+ });
138
147
  }
139
148
  // Optional agent failed - log skip reason and continue
140
149
  console.log(`[router] ⏭️ Optional agent ${agent.name} skipped: ${result.error}`);
@@ -166,7 +175,10 @@ export async function executeAllPasses(config, agentContext, routerEnv, budgetCh
166
175
  if (pass.required) {
167
176
  const message = `Required agent ${agent.name} crashed: ${errorMsg}`;
168
177
  console.error(`[router] ❌ ${message}`);
169
- throw new FatalExecutionError('AGENT_CRASH', message, error instanceof Error ? { cause: error } : undefined);
178
+ throw new FatalExecutionError('AGENT_CRASH', message, {
179
+ cause: error instanceof Error ? error : undefined,
180
+ partialResults: { completeFindings, partialFindings, allResults, skippedAgents },
181
+ });
170
182
  }
171
183
  console.error(`[router] ⏭️ Optional agent ${agent.name} crashed: ${errorMsg}`);
172
184
  skippedAgents.push({ id: agent.id, name: agent.name, reason: errorMsg });
@@ -1 +1 @@
1
- {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/phases/execute.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execute.js","sourceRoot":"","sources":["../../src/phases/execute.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,6 @@
4
4
  * Export all phase functions for orchestration from main.ts.
5
5
  */
6
6
  export { runPreflightChecks, type PreflightResult } from './preflight.js';
7
- export { executeAllPasses, type ExecuteOptions, type ExecuteResult, type SkippedAgent, } from './execute.js';
7
+ export { executeAllPasses, FatalExecutionError, type ExecuteOptions, type ExecuteResult, type SkippedAgent, } from './execute.js';
8
8
  export { processFindings, dispatchReport, getPostNormalizationFindings, checkGating, GatingError, type Platform, type ReportOptions, type ProcessedFindings, type DispatchReportResult, } from './report.js';
9
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/phases/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EACL,gBAAgB,EAChB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,eAAe,EACf,cAAc,EACd,4BAA4B,EAC5B,WAAW,EACX,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,GAC1B,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/phases/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACnB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,YAAY,GAClB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,eAAe,EACf,cAAc,EACd,4BAA4B,EAC5B,WAAW,EACX,WAAW,EACX,KAAK,QAAQ,EACb,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,GAC1B,MAAM,aAAa,CAAC"}
@@ -4,6 +4,6 @@
4
4
  * Export all phase functions for orchestration from main.ts.
5
5
  */
6
6
  export { runPreflightChecks } from './preflight.js';
7
- export { executeAllPasses, } from './execute.js';
7
+ export { executeAllPasses, FatalExecutionError, } from './execute.js';
8
8
  export { processFindings, dispatchReport, getPostNormalizationFindings, checkGating, GatingError, } from './report.js';
9
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/phases/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAwB,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EACL,gBAAgB,GAIjB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,eAAe,EACf,cAAc,EACd,4BAA4B,EAC5B,WAAW,EACX,WAAW,GAKZ,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/phases/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,kBAAkB,EAAwB,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EACL,gBAAgB,EAChB,mBAAmB,GAIpB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,eAAe,EACf,cAAc,EACd,4BAA4B,EAC5B,WAAW,EACX,WAAW,GAKZ,MAAM,aAAa,CAAC"}
@@ -7,6 +7,8 @@
7
7
  import type { Config } from '../config.js';
8
8
  import { type Finding, type AgentResult } from '../agents/types.js';
9
9
  import type { DiffFile } from '../diff.js';
10
+ import type { RunStatus } from '../cli/execution-plan.js';
11
+ import { type SuppressionMode } from '../report/user-suppressions.js';
10
12
  import type { SkippedAgent } from './execute.js';
11
13
  export type Platform = 'github' | 'ado' | 'unknown';
12
14
  export interface DispatchReportResult {
@@ -24,9 +26,24 @@ export interface ReportOptions {
24
26
  /** Optional: use this SHA for GitHub check runs when the review head is not in the base repo */
25
27
  githubHeadSha?: string;
26
28
  checkRunId?: number;
29
+ /** Canonical run status — when 'incomplete', reporters MUST use neutral/pending conclusion
30
+ * regardless of gating config. This is the same RunStatus used for CLI exit codes and JSON status. */
31
+ runStatus?: RunStatus;
27
32
  }
28
- export interface ProcessedFindings {
29
- deduplicated: Finding[];
33
+ export interface SharedReportFindings {
34
+ /** Complete findings after the relevant reporting pipeline */
35
+ complete: Finding[];
36
+ /** Partial findings after the relevant reporting pipeline */
37
+ partial: Finding[];
38
+ /** Per-rule suppression match counts for JSON output (FR-022) */
39
+ suppressionSummary?: {
40
+ reason: string;
41
+ matched: number;
42
+ }[];
43
+ }
44
+ export interface ProcessedFindings extends SharedReportFindings {
45
+ /** Findings after dedup + semantic validation + user suppression + framework filter + sanitization */
46
+ filtered: Finding[];
30
47
  sorted: Finding[];
31
48
  partialSorted: Finding[];
32
49
  summary: string;
@@ -37,7 +54,7 @@ export interface ProcessedFindings {
37
54
  * (012-fix-agent-result-regressions) - Updated to handle completeFindings and partialFindings
38
55
  * separately. Partial findings are rendered in a dedicated section but NOT used for gating.
39
56
  */
40
- export declare function processFindings(completeFindings: Finding[], partialFindings: Finding[], allResults: AgentResult[], skippedAgents: SkippedAgent[], diffFiles?: DiffFile[], prDescription?: string): ProcessedFindings;
57
+ export declare function processFindings(completeFindings: Finding[], partialFindings: Finding[], allResults: AgentResult[], skippedAgents: SkippedAgent[], diffFiles?: DiffFile[], prDescription?: string, config?: Config, suppressionMode?: SuppressionMode): ProcessedFindings;
41
58
  /**
42
59
  * Dispatch report to the appropriate platform.
43
60
  *
@@ -65,7 +82,14 @@ export declare function getPostNormalizationFindings(findings: Finding[], diffFi
65
82
  * Used by CLI local review, benchmark adapter, and any code path that needs
66
83
  * the same suppression behavior as hosted mode.
67
84
  */
68
- export declare function applyFindingsPipeline(findings: Finding[], diffFiles: DiffFile[], prDescription?: string): Finding[];
85
+ export declare function applyFindingsPipeline(findings: Finding[], diffFiles: DiffFile[], prDescription?: string, config?: Config, suppressionMode?: SuppressionMode): Finding[];
86
+ /**
87
+ * Shared local-reporting pipeline.
88
+ *
89
+ * Produces the same suppression-aware metadata contract used by hosted reporting,
90
+ * while applying Stage 2 diff-bound validation required for local gating/terminal output.
91
+ */
92
+ export declare function processLocalReportFindings(completeFindings: Finding[], partialFindings: Finding[], diffFiles: DiffFile[], config?: Config, suppressionMode?: SuppressionMode): SharedReportFindings;
69
93
  /**
70
94
  * Error thrown when gating detects blocking findings.
71
95
  * Distinct from FatalExecutionError to allow callers to handle gating
@@ -1 +1 @@
1
- {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/phases/report.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAIL,KAAK,OAAO,EACZ,KAAK,WAAW,EACjB,MAAM,oBAAoB,CAAC;AAE5B,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAkB3C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEjD,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;AAEpD,MAAM,WAAW,oBAAoB;IACnC,kFAAkF;IAClF,iBAAiB,EAAE,OAAO,CAAC;IAC3B,+FAA+F;IAC/F,yBAAyB,CAAC,EAAE,OAAO,EAAE,CAAC;CACvC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,gGAAgG;IAChG,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,YAAY,EAAE,OAAO,EAAE,CAAC;IACxB,MAAM,EAAE,OAAO,EAAE,CAAC;IAClB,aAAa,EAAE,OAAO,EAAE,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AAuBD;;;;;GAKG;AACH,wBAAgB,eAAe,CAC7B,gBAAgB,EAAE,OAAO,EAAE,EAC3B,eAAe,EAAE,OAAO,EAAE,EAC1B,UAAU,EAAE,WAAW,EAAE,EACzB,aAAa,EAAE,YAAY,EAAE,EAC7B,SAAS,GAAE,QAAQ,EAAO,EAC1B,aAAa,CAAC,EAAE,MAAM,GACrB,iBAAiB,CA4FnB;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAClC,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,OAAO,EAAE,EACnB,eAAe,EAAE,OAAO,EAAE,EAC1B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,QAAQ,EAAE,EACrB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,EAC7C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAiF3C;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,OAAO,EAAE,EACnB,SAAS,EAAE,QAAQ,EAAE,GACpB,OAAO,EAAE,CAEX;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,OAAO,EAAE,EACnB,SAAS,EAAE,QAAQ,EAAE,EACrB,aAAa,CAAC,EAAE,MAAM,GACrB,OAAO,EAAE,CAqBX;AAED;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,KAAK;gBACxB,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;;;;GAQG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,GAAG,IAAI,CAgB7E"}
1
+ {"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../src/phases/report.ts"],"names":[],"mappings":"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"}