projscan 4.9.3 → 4.11.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 (220) hide show
  1. package/README.md +49 -8
  2. package/dist/analyzers/securityCheck.js +33 -15
  3. package/dist/analyzers/securityCheck.js.map +1 -1
  4. package/dist/analyzers/supplyChainCheck.js +9 -2
  5. package/dist/analyzers/supplyChainCheck.js.map +1 -1
  6. package/dist/cli/commands/assess.d.ts +3 -0
  7. package/dist/cli/commands/assess.js +143 -0
  8. package/dist/cli/commands/assess.js.map +1 -0
  9. package/dist/cli/commands/bugHunt.js +3 -1
  10. package/dist/cli/commands/bugHunt.js.map +1 -1
  11. package/dist/cli/commands/ci.js +29 -13
  12. package/dist/cli/commands/ci.js.map +1 -1
  13. package/dist/cli/commands/dogfood.js +2 -0
  14. package/dist/cli/commands/dogfood.js.map +1 -1
  15. package/dist/cli/commands/feedback.js +21 -2
  16. package/dist/cli/commands/feedback.js.map +1 -1
  17. package/dist/cli/commands/init.js +3 -0
  18. package/dist/cli/commands/init.js.map +1 -1
  19. package/dist/cli/commands/route.js +3 -2
  20. package/dist/cli/commands/route.js.map +1 -1
  21. package/dist/cli/commands/simulate.d.ts +3 -0
  22. package/dist/cli/commands/simulate.js +125 -0
  23. package/dist/cli/commands/simulate.js.map +1 -0
  24. package/dist/cli/registerCommands.js +4 -0
  25. package/dist/cli/registerCommands.js.map +1 -1
  26. package/dist/core/adoption.js +50 -21
  27. package/dist/core/adoption.js.map +1 -1
  28. package/dist/core/agentBrief.js +2 -1
  29. package/dist/core/agentBrief.js.map +1 -1
  30. package/dist/core/assess.d.ts +9 -0
  31. package/dist/core/assess.js +119 -0
  32. package/dist/core/assess.js.map +1 -0
  33. package/dist/core/bugHunt.js +51 -22
  34. package/dist/core/bugHunt.js.map +1 -1
  35. package/dist/core/bugHuntHotspotFindings.js +2 -1
  36. package/dist/core/bugHuntHotspotFindings.js.map +1 -1
  37. package/dist/core/ciGate.d.ts +10 -0
  38. package/dist/core/ciGate.js +21 -0
  39. package/dist/core/ciGate.js.map +1 -0
  40. package/dist/core/dogfood.d.ts +1 -0
  41. package/dist/core/dogfood.js +42 -20
  42. package/dist/core/dogfood.js.map +1 -1
  43. package/dist/core/dogfoodDiscovery.d.ts +8 -0
  44. package/dist/core/dogfoodDiscovery.js +119 -0
  45. package/dist/core/dogfoodDiscovery.js.map +1 -0
  46. package/dist/core/feedback.js +73 -5
  47. package/dist/core/feedback.js.map +1 -1
  48. package/dist/core/fileInspectionReport.js +37 -0
  49. package/dist/core/fileInspectionReport.js.map +1 -1
  50. package/dist/core/intentRouterArchitectureKeywordWeights.d.ts +1 -0
  51. package/dist/core/intentRouterArchitectureKeywordWeights.js +69 -0
  52. package/dist/core/intentRouterArchitectureKeywordWeights.js.map +1 -0
  53. package/dist/core/intentRouterCatalog.js +85 -31
  54. package/dist/core/intentRouterCatalog.js.map +1 -1
  55. package/dist/core/intentRouterDependencyKeywordWeights.d.ts +1 -0
  56. package/dist/core/intentRouterDependencyKeywordWeights.js +100 -0
  57. package/dist/core/intentRouterDependencyKeywordWeights.js.map +1 -0
  58. package/dist/core/intentRouterFileImpactKeywordWeights.d.ts +1 -0
  59. package/dist/core/intentRouterFileImpactKeywordWeights.js +92 -0
  60. package/dist/core/intentRouterFileImpactKeywordWeights.js.map +1 -0
  61. package/dist/core/intentRouterKeywordEarlyGuards.js +8 -3
  62. package/dist/core/intentRouterKeywordEarlyGuards.js.map +1 -1
  63. package/dist/core/intentRouterKeywordSearchGuards.js +28 -24
  64. package/dist/core/intentRouterKeywordSearchGuards.js.map +1 -1
  65. package/dist/core/intentRouterKeywordToolGuards.js +43 -0
  66. package/dist/core/intentRouterKeywordToolGuards.js.map +1 -1
  67. package/dist/core/intentRouterKeywordWeights.js +40 -1222
  68. package/dist/core/intentRouterKeywordWeights.js.map +1 -1
  69. package/dist/core/intentRouterOperationalKeywordWeights.d.ts +1 -0
  70. package/dist/core/intentRouterOperationalKeywordWeights.js +203 -0
  71. package/dist/core/intentRouterOperationalKeywordWeights.js.map +1 -0
  72. package/dist/core/intentRouterPlanningSignals.js +4 -1
  73. package/dist/core/intentRouterPlanningSignals.js.map +1 -1
  74. package/dist/core/intentRouterPrDiffKeywords.d.ts +4 -0
  75. package/dist/core/intentRouterPrDiffKeywords.js +64 -0
  76. package/dist/core/intentRouterPrDiffKeywords.js.map +1 -0
  77. package/dist/core/intentRouterPrDiffSignals.js +6 -0
  78. package/dist/core/intentRouterPrDiffSignals.js.map +1 -1
  79. package/dist/core/intentRouterProductImprovementSignals.d.ts +1 -0
  80. package/dist/core/intentRouterProductImprovementSignals.js +48 -0
  81. package/dist/core/intentRouterProductImprovementSignals.js.map +1 -0
  82. package/dist/core/intentRouterRegressionKeywordMatches.js +3 -0
  83. package/dist/core/intentRouterRegressionKeywordMatches.js.map +1 -1
  84. package/dist/core/intentRouterRegressionKeywordWeights.d.ts +1 -0
  85. package/dist/core/intentRouterRegressionKeywordWeights.js +118 -0
  86. package/dist/core/intentRouterRegressionKeywordWeights.js.map +1 -0
  87. package/dist/core/intentRouterReleaseSignals.d.ts +1 -0
  88. package/dist/core/intentRouterReleaseSignals.js +47 -0
  89. package/dist/core/intentRouterReleaseSignals.js.map +1 -1
  90. package/dist/core/intentRouterReviewSignals.d.ts +1 -0
  91. package/dist/core/intentRouterReviewSignals.js +23 -1
  92. package/dist/core/intentRouterReviewSignals.js.map +1 -1
  93. package/dist/core/intentRouterSearchKeywordWeights.d.ts +1 -0
  94. package/dist/core/intentRouterSearchKeywordWeights.js +407 -0
  95. package/dist/core/intentRouterSearchKeywordWeights.js.map +1 -0
  96. package/dist/core/intentRouterSecurityKeywordWeights.d.ts +1 -0
  97. package/dist/core/intentRouterSecurityKeywordWeights.js +50 -0
  98. package/dist/core/intentRouterSecurityKeywordWeights.js.map +1 -0
  99. package/dist/core/intentRouterTrustFeedbackKeywordWeights.d.ts +1 -0
  100. package/dist/core/intentRouterTrustFeedbackKeywordWeights.js +222 -0
  101. package/dist/core/intentRouterTrustFeedbackKeywordWeights.js.map +1 -0
  102. package/dist/core/intentRouterUnderstandSignals.js +1 -0
  103. package/dist/core/intentRouterUnderstandSignals.js.map +1 -1
  104. package/dist/core/intentRouterWorkSignals.js +3 -0
  105. package/dist/core/intentRouterWorkSignals.js.map +1 -1
  106. package/dist/core/intentRouterWorkflowKeywordWeights.d.ts +1 -0
  107. package/dist/core/intentRouterWorkflowKeywordWeights.js +124 -0
  108. package/dist/core/intentRouterWorkflowKeywordWeights.js.map +1 -0
  109. package/dist/core/issueEngine.js +46 -2
  110. package/dist/core/issueEngine.js.map +1 -1
  111. package/dist/core/memory.d.ts +2 -0
  112. package/dist/core/memory.js +33 -1
  113. package/dist/core/memory.js.map +1 -1
  114. package/dist/core/preflightChangedFiles.d.ts +3 -0
  115. package/dist/core/preflightChangedFiles.js +13 -0
  116. package/dist/core/preflightChangedFiles.js.map +1 -1
  117. package/dist/core/preflightEvidence.d.ts +3 -0
  118. package/dist/core/preflightEvidence.js +3 -0
  119. package/dist/core/preflightEvidence.js.map +1 -1
  120. package/dist/core/privacy.d.ts +2 -0
  121. package/dist/core/privacy.js +10 -0
  122. package/dist/core/privacy.js.map +1 -1
  123. package/dist/core/proofCards.d.ts +10 -0
  124. package/dist/core/proofCards.js +222 -0
  125. package/dist/core/proofCards.js.map +1 -0
  126. package/dist/core/qualityScorecard.js +25 -13
  127. package/dist/core/qualityScorecard.js.map +1 -1
  128. package/dist/core/riskDelta.d.ts +19 -0
  129. package/dist/core/riskDelta.js +77 -0
  130. package/dist/core/riskDelta.js.map +1 -0
  131. package/dist/core/simulate.d.ts +6 -0
  132. package/dist/core/simulate.js +298 -0
  133. package/dist/core/simulate.js.map +1 -0
  134. package/dist/core/startEvidence.js +26 -1
  135. package/dist/core/startEvidence.js.map +1 -1
  136. package/dist/core/startFixedRouteCriteria.js +5 -0
  137. package/dist/core/startFixedRouteCriteria.js.map +1 -1
  138. package/dist/core/startInputs.d.ts +3 -0
  139. package/dist/core/startMissionPolicy.d.ts +1 -1
  140. package/dist/core/startMissionPolicy.js +18 -7
  141. package/dist/core/startMissionPolicy.js.map +1 -1
  142. package/dist/core/startMode.js +17 -4
  143. package/dist/core/startMode.js.map +1 -1
  144. package/dist/core/startReportBuilder.js +1 -1
  145. package/dist/core/startReportBuilder.js.map +1 -1
  146. package/dist/core/startReviewGate.js +26 -4
  147. package/dist/core/startReviewGate.js.map +1 -1
  148. package/dist/core/startRouteActions.js +6 -0
  149. package/dist/core/startRouteActions.js.map +1 -1
  150. package/dist/core/understand.js +60 -13
  151. package/dist/core/understand.js.map +1 -1
  152. package/dist/core/workplan.js +99 -17
  153. package/dist/core/workplan.js.map +1 -1
  154. package/dist/mcp/toolCatalog.js +4 -0
  155. package/dist/mcp/toolCatalog.js.map +1 -1
  156. package/dist/mcp/tools/assess.d.ts +2 -0
  157. package/dist/mcp/tools/assess.js +42 -0
  158. package/dist/mcp/tools/assess.js.map +1 -0
  159. package/dist/mcp/tools/simulate.d.ts +2 -0
  160. package/dist/mcp/tools/simulate.js +32 -0
  161. package/dist/mcp/tools/simulate.js.map +1 -0
  162. package/dist/projscan-sbom.cdx.json +6 -6
  163. package/dist/publicCore.d.ts +2 -0
  164. package/dist/publicCore.js +2 -0
  165. package/dist/publicCore.js.map +1 -1
  166. package/dist/reporters/ciIssueDetails.d.ts +10 -0
  167. package/dist/reporters/ciIssueDetails.js +37 -0
  168. package/dist/reporters/ciIssueDetails.js.map +1 -0
  169. package/dist/reporters/consoleCiReporter.d.ts +2 -1
  170. package/dist/reporters/consoleCiReporter.js +26 -9
  171. package/dist/reporters/consoleCiReporter.js.map +1 -1
  172. package/dist/reporters/consoleFileReporter.js +10 -0
  173. package/dist/reporters/consoleFileReporter.js.map +1 -1
  174. package/dist/reporters/consoleHealthReporter.js +3 -1
  175. package/dist/reporters/consoleHealthReporter.js.map +1 -1
  176. package/dist/reporters/jsonReporter.d.ts +2 -1
  177. package/dist/reporters/jsonReporter.js +17 -10
  178. package/dist/reporters/jsonReporter.js.map +1 -1
  179. package/dist/reporters/markdownFileReporter.js +11 -0
  180. package/dist/reporters/markdownFileReporter.js.map +1 -1
  181. package/dist/reporters/markdownHealthReporter.d.ts +2 -1
  182. package/dist/reporters/markdownHealthReporter.js +5 -5
  183. package/dist/reporters/markdownHealthReporter.js.map +1 -1
  184. package/dist/reporters/scoreBreakdownReporter.d.ts +2 -0
  185. package/dist/reporters/scoreBreakdownReporter.js +24 -0
  186. package/dist/reporters/scoreBreakdownReporter.js.map +1 -0
  187. package/dist/tool-manifest.json +52 -3
  188. package/dist/types/analysis.d.ts +21 -1
  189. package/dist/types/assess.d.ts +91 -0
  190. package/dist/types/assess.js +2 -0
  191. package/dist/types/assess.js.map +1 -0
  192. package/dist/types/bugHunt.d.ts +3 -0
  193. package/dist/types/config.d.ts +9 -0
  194. package/dist/types/dogfood.d.ts +15 -1
  195. package/dist/types/inspection.d.ts +3 -0
  196. package/dist/types/preflight.d.ts +3 -0
  197. package/dist/types/simulate.d.ts +41 -0
  198. package/dist/types/simulate.js +2 -0
  199. package/dist/types/simulate.js.map +1 -0
  200. package/dist/types/startMissionControl.d.ts +3 -0
  201. package/dist/types/startMissionReview.d.ts +2 -0
  202. package/dist/types/workplan.d.ts +1 -0
  203. package/dist/types.d.ts +2 -0
  204. package/dist/utils/ciFailOn.d.ts +5 -0
  205. package/dist/utils/ciFailOn.js +12 -0
  206. package/dist/utils/ciFailOn.js.map +1 -0
  207. package/dist/utils/config.js +3 -1
  208. package/dist/utils/config.js.map +1 -1
  209. package/dist/utils/configBasics.d.ts +2 -0
  210. package/dist/utils/configBasics.js +21 -0
  211. package/dist/utils/configBasics.js.map +1 -1
  212. package/dist/utils/configIssueRules.js +64 -0
  213. package/dist/utils/configIssueRules.js.map +1 -1
  214. package/dist/utils/formatSupport.d.ts +2 -0
  215. package/dist/utils/formatSupport.js +2 -0
  216. package/dist/utils/formatSupport.js.map +1 -1
  217. package/dist/utils/scoreCalculator.js +77 -16
  218. package/dist/utils/scoreCalculator.js.map +1 -1
  219. package/docs/GUIDE.md +55 -7
  220. package/package.json +1 -1
@@ -12,6 +12,7 @@ export function reportFileInspection(insp) {
12
12
  printFileImports(insp);
13
13
  printFileExports(insp);
14
14
  printFileFunctions(insp);
15
+ printFileSuggestedActions(insp);
15
16
  console.log('');
16
17
  }
17
18
  function header(title) {
@@ -119,6 +120,15 @@ function printFileFunctions(insp) {
119
120
  console.log(chalk.dim(` ... and ${insp.functions.length - 10} more`));
120
121
  }
121
122
  }
123
+ function printFileSuggestedActions(insp) {
124
+ if (!insp.suggestedNextActions || insp.suggestedNextActions.length === 0)
125
+ return;
126
+ console.log(header('Next Actions'));
127
+ for (const action of insp.suggestedNextActions) {
128
+ const command = action.command ? ` ${chalk.dim(action.command)}` : '';
129
+ console.log(` ${chalk.dim('•')} ${chalk.bold(action.label)}${command}`);
130
+ }
131
+ }
122
132
  function formatSize(bytes) {
123
133
  if (bytes < 1024)
124
134
  return `${bytes} B`;
@@ -1 +1 @@
1
- {"version":3,"file":"consoleFileReporter.js","sourceRoot":"","sources":["../../src/reporters/consoleFileReporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"consoleFileReporter.js","sourceRoot":"","sources":["../../src/reporters/consoleFileReporter.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import chalk from 'chalk';
2
2
  import { calculateScore } from '../utils/scoreCalculator.js';
3
+ import { printScoreBreakdown } from './scoreBreakdownReporter.js';
3
4
  export function reportHealth(issues, scanTimeMsOrOptions) {
4
5
  const opts = normalizeHealthOptions(scanTimeMsOrOptions);
5
6
  console.log(header('Project Health Report'));
@@ -45,9 +46,10 @@ function gradeColor(grade) {
45
46
  return chalk.red;
46
47
  }
47
48
  function printHealthScore(issues) {
48
- const { score, grade } = calculateScore(issues);
49
+ const { score, grade, scoreBreakdown } = calculateScore(issues);
49
50
  const color = gradeColor(grade);
50
51
  console.log(`\n Health Score: ${color(chalk.bold(`${grade} (${score}/100)`))}`);
52
+ printScoreBreakdown(scoreBreakdown);
51
53
  }
52
54
  function printNoIssues() {
53
55
  console.log(` ${chalk.green('✓')} ${chalk.bold('No issues detected!')} Your project looks healthy.\n`);
@@ -1 +1 @@
1
- {"version":3,"file":"consoleHealthReporter.js","sourceRoot":"","sources":["../../src/reporters/consoleHealthReporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"consoleHealthReporter.js","sourceRoot":"","sources":["../../src/reporters/consoleHealthReporter.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  import type { AnalysisReport, AuditReport, CoverageJoinedReport, CouplingReport, Issue, FileExplanation, FileInspection, ArchitectureLayer, DirectoryNode, DependencyReport, DiffResult, HotspotReport, OutdatedReport, PrDiffReport, FixSuggestion, ImpactReport, IssueExplanation, UpgradePreview, WorkspaceInfo } from '../types.js';
2
2
  import type { ReportControlsMetadata } from '../core/reportScope.js';
3
3
  import type { ReviewReport } from '../types/review.js';
4
+ import type { CiFailOnSeverity } from '../types/config.js';
4
5
  export declare const CLI_JSON_SCHEMA_VERSION = 2;
5
6
  export declare function reportAnalysisJson(report: AnalysisReport, reportControls?: ReportControlsMetadata): void;
6
7
  export declare function reportHealthJson(issues: Issue[], reportControls?: ReportControlsMetadata): void;
7
- export declare function reportCiJson(issues: Issue[], threshold: number, reportControls?: ReportControlsMetadata): void;
8
+ export declare function reportCiJson(issues: Issue[], threshold: number, reportControls?: ReportControlsMetadata, failOn?: CiFailOnSeverity): void;
8
9
  export declare function reportDiffJson(diff: DiffResult): void;
9
10
  export declare function reportExplanationJson(explanation: FileExplanation): void;
10
11
  export declare function reportDiagramJson(layers: ArchitectureLayer[]): void;
@@ -1,4 +1,6 @@
1
+ import { evaluateCiGate } from '../core/ciGate.js';
1
2
  import { calculateScore } from '../utils/scoreCalculator.js';
3
+ import { toCiIssueDetail } from './ciIssueDetails.js';
2
4
  export const CLI_JSON_SCHEMA_VERSION = 2;
3
5
  function emitJson(payload) {
4
6
  console.log(JSON.stringify({ schemaVersion: CLI_JSON_SCHEMA_VERSION, ...payload }, null, 2));
@@ -10,7 +12,7 @@ export function reportAnalysisJson(report, reportControls) {
10
12
  });
11
13
  }
12
14
  export function reportHealthJson(issues, reportControls) {
13
- const { score, grade, errors, warnings, infos } = calculateScore(issues);
15
+ const { score, grade, errors, warnings, infos, scoreBreakdown } = calculateScore(issues);
14
16
  console.log(JSON.stringify({
15
17
  schemaVersion: CLI_JSON_SCHEMA_VERSION,
16
18
  ...(reportControls ? { reportControls } : {}),
@@ -21,25 +23,30 @@ export function reportHealthJson(issues, reportControls) {
21
23
  errors,
22
24
  warnings,
23
25
  info: infos,
26
+ scoreBreakdown,
24
27
  issues,
25
28
  },
26
29
  }, null, 2));
27
30
  }
28
- export function reportCiJson(issues, threshold, reportControls) {
29
- const { score, grade, errors, warnings, infos } = calculateScore(issues);
31
+ export function reportCiJson(issues, threshold, reportControls, failOn) {
32
+ const gate = evaluateCiGate(issues, threshold, failOn);
30
33
  console.log(JSON.stringify({
31
34
  schemaVersion: CLI_JSON_SCHEMA_VERSION,
32
35
  ...(reportControls ? { reportControls } : {}),
33
36
  ci: {
34
- score,
35
- grade,
36
- pass: score >= threshold,
37
+ score: gate.score,
38
+ grade: gate.grade,
39
+ pass: gate.pass,
37
40
  threshold,
41
+ failOn: gate.failOn,
42
+ scorePass: gate.scorePass,
43
+ severityFloorMet: gate.severityFloorMet,
38
44
  totalIssues: issues.length,
39
- errors,
40
- warnings,
41
- info: infos,
42
- issues,
45
+ errors: gate.errors,
46
+ warnings: gate.warnings,
47
+ info: gate.infos,
48
+ scoreBreakdown: gate.scoreBreakdown,
49
+ issues: issues.map(toCiIssueDetail),
43
50
  },
44
51
  }, null, 2));
45
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"jsonReporter.js","sourceRoot":"","sources":["../../src/reporters/jsonReporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"jsonReporter.js","sourceRoot":"","sources":["../../src/reporters/jsonReporter.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ export function reportFileMarkdown(insp) {
12
12
  appendFileImports(lines, insp);
13
13
  appendFileExports(lines, insp);
14
14
  appendFileFunctions(lines, insp);
15
+ appendFileSuggestedActions(lines, insp);
15
16
  console.log(lines.join('\n'));
16
17
  }
17
18
  function appendFileSummary(lines, insp) {
@@ -89,4 +90,14 @@ function appendFileFunctions(lines, insp) {
89
90
  lines.push('', `_... and ${insp.functions.length - 20} more_`);
90
91
  }
91
92
  }
93
+ function appendFileSuggestedActions(lines, insp) {
94
+ if (!insp.suggestedNextActions || insp.suggestedNextActions.length === 0)
95
+ return;
96
+ lines.push('', '## Next Actions', '');
97
+ for (const action of insp.suggestedNextActions) {
98
+ lines.push(action.command
99
+ ? `- **${action.label}:** \`${action.command}\``
100
+ : `- **${action.label}**`);
101
+ }
102
+ }
92
103
  //# sourceMappingURL=markdownFileReporter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"markdownFileReporter.js","sourceRoot":"","sources":["../../src/reporters/markdownFileReporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdownFileReporter.js","sourceRoot":"","sources":["../../src/reporters/markdownFileReporter.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import type { Issue } from '../types.js';
2
2
  import type { ReportControlsMetadata } from '../core/reportScope.js';
3
+ import type { CiFailOnSeverity } from '../types/config.js';
3
4
  export declare function reportHealthMarkdown(issues: Issue[], reportControls?: ReportControlsMetadata): void;
4
- export declare function reportCiMarkdown(issues: Issue[], threshold: number, reportControls?: ReportControlsMetadata): void;
5
+ export declare function reportCiMarkdown(issues: Issue[], threshold: number, reportControls?: ReportControlsMetadata, failOn?: CiFailOnSeverity): void;
@@ -1,3 +1,4 @@
1
+ import { evaluateCiGate } from '../core/ciGate.js';
1
2
  import { calculateScore, badgeMarkdown } from '../utils/scoreCalculator.js';
2
3
  export function reportHealthMarkdown(issues, reportControls) {
3
4
  const { score, grade } = calculateScore(issues);
@@ -10,12 +11,11 @@ export function reportHealthMarkdown(issues, reportControls) {
10
11
  appendHealthIssues(lines, issues);
11
12
  console.log(lines.join('\n'));
12
13
  }
13
- export function reportCiMarkdown(issues, threshold, reportControls) {
14
- const { score, grade } = calculateScore(issues);
15
- const pass = score >= threshold;
16
- const lines = [`# Projscan CI - ${ciLabel(pass)}`, ''];
14
+ export function reportCiMarkdown(issues, threshold, reportControls, failOn) {
15
+ const gate = evaluateCiGate(issues, threshold, failOn);
16
+ const lines = [`# Projscan CI - ${ciLabel(gate.pass)}`, ''];
17
17
  appendReportControlsMarkdown(lines, reportControls);
18
- lines.push(`| Metric | Value |`, `| --- | --- |`, `| Score | **${score}/100** |`, `| Grade | **${grade}** |`, `| Threshold | ${threshold} |`, `| Result | ${ciIcon(pass)} ${ciResultLabel(pass)} |`);
18
+ lines.push(`| Metric | Value |`, `| --- | --- |`, `| Score | **${gate.score}/100** |`, `| Grade | **${gate.grade}** |`, `| Threshold | ${threshold} |`, `| Fail on | ${gate.failOn} |`, `| Result | ${ciIcon(gate.pass)} ${ciResultLabel(gate.pass)} |`);
19
19
  appendCiIssues(lines, issues);
20
20
  console.log(lines.join('\n'));
21
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"markdownHealthReporter.js","sourceRoot":"","sources":["../../src/reporters/markdownHealthReporter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"markdownHealthReporter.js","sourceRoot":"","sources":["../../src/reporters/markdownHealthReporter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { ScoreBreakdown } from '../types.js';
2
+ export declare function printScoreBreakdown(breakdown: ScoreBreakdown | undefined): void;
@@ -0,0 +1,24 @@
1
+ import chalk from 'chalk';
2
+ export function printScoreBreakdown(breakdown) {
3
+ if (!breakdown || breakdown.uncappedPenalty <= 0)
4
+ return;
5
+ console.log(` Score breakdown: ${breakdown.baseScore} - ${breakdown.totalPenalty} penalty = ${breakdown.finalScore}`);
6
+ console.log(` ${severityParts(breakdown).join('; ')}`);
7
+ const categories = breakdown.byCategory.filter((entry) => entry.penalty > 0);
8
+ if (categories.length > 0) {
9
+ console.log(` ${chalk.dim('categories:')} ${categories
10
+ .map((entry) => `${entry.category} -${entry.penalty}`)
11
+ .join(', ')}`);
12
+ }
13
+ }
14
+ function severityParts(breakdown) {
15
+ return ['error', 'warning', 'info']
16
+ .map((severity) => {
17
+ const item = breakdown.bySeverity[severity];
18
+ if (item.count === 0)
19
+ return null;
20
+ return `${severity}: ${item.count} x ${item.weight} = -${item.penalty}`;
21
+ })
22
+ .filter((part) => Boolean(part));
23
+ }
24
+ //# sourceMappingURL=scoreBreakdownReporter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scoreBreakdownReporter.js","sourceRoot":"","sources":["../../src/reporters/scoreBreakdownReporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,UAAU,mBAAmB,CAAC,SAAqC;IACvE,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,eAAe,IAAI,CAAC;QAAE,OAAO;IAEzD,OAAO,CAAC,GAAG,CACT,sBAAsB,SAAS,CAAC,SAAS,MAAM,SAAS,CAAC,YAAY,cAAc,SAAS,CAAC,UAAU,EAAE,CAC1G,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,OAAO,aAAa,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAE1D,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;IAC7E,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CACT,OAAO,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,UAAU;aAC1C,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;aACrD,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,SAAyB;IAC9C,OAAQ,CAAC,OAAO,EAAE,SAAS,EAAE,MAAM,CAAW;SAC3C,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;QAChB,MAAM,IAAI,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,IAAI,CAAC,KAAK,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAClC,OAAO,GAAG,QAAQ,KAAK,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,MAAM,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC;IAC1E,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;AACrD,CAAC"}
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "projscan",
3
- "version": "4.9.3",
3
+ "version": "4.11.0",
4
4
  "mcpProtocolVersion": null,
5
- "generatedAt": "2026-06-20T11:00:08.981Z",
6
- "toolCount": 45,
5
+ "generatedAt": "2026-06-21T21:06:32.779Z",
6
+ "toolCount": 47,
7
7
  "tools": [
8
8
  {
9
9
  "name": "projscan_analyze",
@@ -1001,6 +1001,55 @@
1001
1001
  }
1002
1002
  }
1003
1003
  },
1004
+ {
1005
+ "name": "projscan_assess",
1006
+ "description": "Run a proof-first engineering assessment. Returns Proof Cards with local evidence, fix-first guidance, risk delta, verification commands, and ship-readiness wording.",
1007
+ "inputSchema": {
1008
+ "type": "object",
1009
+ "properties": {
1010
+ "goal": {
1011
+ "type": "string",
1012
+ "description": "Plain-language assessment goal. Example: \"make this repo safer to ship\"."
1013
+ },
1014
+ "mode": {
1015
+ "type": "string",
1016
+ "description": "Assessment mode: standard, fix-first, or ship-readiness. fix-first returns the shortest action queue."
1017
+ },
1018
+ "max_cards": {
1019
+ "type": "number",
1020
+ "description": "Maximum Proof Cards to return. Default: 5, max: 25."
1021
+ },
1022
+ "max_tokens": {
1023
+ "type": "number",
1024
+ "description": "Cap the response to roughly this many tokens."
1025
+ }
1026
+ }
1027
+ }
1028
+ },
1029
+ {
1030
+ "name": "projscan_simulate",
1031
+ "description": "Simulate a proposed change plan before editing. Returns likely files, tests, contracts, rollout, proof commands, and projected risk delta from local evidence.",
1032
+ "inputSchema": {
1033
+ "type": "object",
1034
+ "properties": {
1035
+ "plan": {
1036
+ "type": "string",
1037
+ "description": "Plain-language change plan. Example: \"split bugHunt.ts into ranking, evidence, and output modules\"."
1038
+ },
1039
+ "max_files": {
1040
+ "type": "number",
1041
+ "description": "Maximum likely touched files to return. Default: 5, max: 25."
1042
+ },
1043
+ "max_tokens": {
1044
+ "type": "number",
1045
+ "description": "Cap the response to roughly this many tokens."
1046
+ }
1047
+ },
1048
+ "required": [
1049
+ "plan"
1050
+ ]
1051
+ }
1052
+ },
1004
1053
  {
1005
1054
  "name": "projscan_adoption",
1006
1055
  "description": "Adoption helper for new projscan users and agents. Returns ready-to-paste MCP client configs, workflow recipes, or first-run diagnostics without mutating the repo.",
@@ -1,4 +1,4 @@
1
- import type { ExportInfo, ImportInfo, Issue } from './common.js';
1
+ import type { ExportInfo, ImportInfo, Issue, IssueSeverity } from './common.js';
2
2
  import type { DependencyReport, FrameworkResult, LanguageBreakdown, ScanResult } from './scanning.js';
3
3
  export interface FileExplanation {
4
4
  filePath: string;
@@ -29,4 +29,24 @@ export interface HealthScore {
29
29
  errors: number;
30
30
  warnings: number;
31
31
  infos: number;
32
+ scoreBreakdown?: ScoreBreakdown;
33
+ }
34
+ export interface ScoreSeverityBreakdown {
35
+ count: number;
36
+ weight: number;
37
+ penalty: number;
38
+ }
39
+ export interface ScoreCategoryBreakdown {
40
+ category: string;
41
+ count: number;
42
+ penalty: number;
43
+ }
44
+ export interface ScoreBreakdown {
45
+ baseScore: number;
46
+ finalScore: number;
47
+ grade: HealthScore['grade'];
48
+ totalPenalty: number;
49
+ uncappedPenalty: number;
50
+ bySeverity: Record<IssueSeverity, ScoreSeverityBreakdown>;
51
+ byCategory: ScoreCategoryBreakdown[];
32
52
  }
@@ -0,0 +1,91 @@
1
+ import type { PreflightVerdict } from './preflight.js';
2
+ import type { QualityScorecardVerdict } from './qualityScorecard.js';
3
+ import type { WorkplanPriority } from './workplan.js';
4
+ export type AssessMode = 'standard' | 'fix-first' | 'ship-readiness';
5
+ export type AssessVerdict = 'ready' | 'watch' | 'blocked';
6
+ export type AssessConfidence = 'high' | 'medium' | 'low';
7
+ export type AssessProofSource = 'issue' | 'hotspot' | 'coordination' | 'doctor' | 'preflight' | 'session' | 'verification';
8
+ export interface RiskDeltaSnapshot {
9
+ baselineScore: number;
10
+ projectedScore: number;
11
+ delta: number;
12
+ basis: string[];
13
+ }
14
+ export interface AssessBaselineComparison {
15
+ previousScore: number;
16
+ currentScore: number;
17
+ delta: number;
18
+ baselinePath?: string;
19
+ summary: string;
20
+ }
21
+ export interface AssessEvidence {
22
+ source: string;
23
+ detail: string;
24
+ file?: string;
25
+ command?: string;
26
+ }
27
+ export interface AssessImpact {
28
+ commands: string[];
29
+ affectedAreas: string[];
30
+ likelyFiles: string[];
31
+ }
32
+ export interface AssessRecommendedFix {
33
+ summary: string;
34
+ safeChangeShape: string;
35
+ }
36
+ export interface AssessVerification {
37
+ commands: string[];
38
+ expected: string;
39
+ }
40
+ export interface AssessSuppression {
41
+ command: string;
42
+ inlineHint?: string;
43
+ configHint?: string;
44
+ }
45
+ export interface AssessFeedback {
46
+ command: string;
47
+ }
48
+ export interface AssessProofCard {
49
+ id: string;
50
+ priority: WorkplanPriority;
51
+ source: AssessProofSource;
52
+ finding: string;
53
+ whyItMatters: string;
54
+ files: string[];
55
+ evidence: AssessEvidence[];
56
+ impact: AssessImpact;
57
+ recommendedFix: AssessRecommendedFix;
58
+ verification: AssessVerification;
59
+ confidence: AssessConfidence;
60
+ suppression: AssessSuppression;
61
+ feedback: AssessFeedback;
62
+ riskDelta: RiskDeltaSnapshot;
63
+ }
64
+ export interface AssessAnswers {
65
+ actuallyRisky: string;
66
+ whyRisky: string;
67
+ fixFirst: string;
68
+ safestChange: string;
69
+ testsThatProveIt: string[];
70
+ riskRemoved: string;
71
+ shipNow: string;
72
+ }
73
+ export interface AssessReport {
74
+ schemaVersion: 1;
75
+ goal: string;
76
+ mode: AssessMode;
77
+ verdict: AssessVerdict;
78
+ summary: string;
79
+ answers: AssessAnswers;
80
+ proofCards: AssessProofCard[];
81
+ fixFirst?: AssessProofCard;
82
+ riskDelta: RiskDeltaSnapshot;
83
+ baselineComparison?: AssessBaselineComparison;
84
+ commands: string[];
85
+ feedback: string[];
86
+ sourceVerdicts?: {
87
+ quality: QualityScorecardVerdict;
88
+ preflight: PreflightVerdict;
89
+ };
90
+ truncated?: boolean;
91
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=assess.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"assess.js","sourceRoot":"","sources":["../../src/types/assess.ts"],"names":[],"mappings":""}
@@ -26,11 +26,14 @@ export interface BugHuntReport {
26
26
  };
27
27
  hotspotCount: number;
28
28
  preflightVerdict: PreflightVerdict;
29
+ preflightActionableReasonCount?: number;
30
+ preflightIgnoredReasonCount?: number;
29
31
  touchedFiles: string[];
30
32
  conflicts: number;
31
33
  };
32
34
  topSuspects: BugHuntFinding[];
33
35
  fixQueue: BugHuntFinding[];
36
+ reviewQueue?: BugHuntFinding[];
34
37
  fixFirst?: FixFirstRecommendation;
35
38
  verificationMatrix: Array<{
36
39
  command: string;
@@ -1,7 +1,9 @@
1
1
  import type { IssueSeverity } from './common.js';
2
2
  export type ReportFormat = 'console' | 'json' | 'markdown' | 'sarif' | 'html';
3
+ export type CiFailOnSeverity = IssueSeverity;
3
4
  export interface ProjscanConfig {
4
5
  minScore?: number;
6
+ failOn?: CiFailOnSeverity;
5
7
  baseRef?: string;
6
8
  hotspots?: {
7
9
  limit?: number;
@@ -14,6 +16,8 @@ export interface ProjscanConfig {
14
16
  offline?: boolean;
15
17
  };
16
18
  disableRules?: string[];
19
+ suppress?: Record<string, string[]>;
20
+ inlineSuppressions?: Record<string, InlineRuleSuppression[]>;
17
21
  severityOverrides?: Record<string, IssueSeverity>;
18
22
  /**
19
23
  * Named evidence-export presets. `analyze`, `doctor`, and `ci` can select
@@ -43,6 +47,11 @@ export interface ProjscanConfig {
43
47
  sinks?: string[];
44
48
  };
45
49
  }
50
+ export interface InlineRuleSuppression {
51
+ line: number;
52
+ rules: string[];
53
+ reason?: string;
54
+ }
46
55
  export interface ReportPolicyPreset {
47
56
  reportScope?: string[];
48
57
  redactPaths?: boolean;
@@ -65,7 +65,7 @@ export interface FeedbackSummaryReport {
65
65
  };
66
66
  nextDogfoodCommand: string;
67
67
  }
68
- export type FeedbackIntakeCategory = 'false_positive' | 'noisy_caution' | 'missing_framework_rule' | 'confusing_docs_output' | 'useful_signal' | 'uncategorized';
68
+ export type FeedbackIntakeCategory = 'false_positive' | 'noisy_caution' | 'install_warning' | 'missing_framework_rule' | 'confusing_docs_output' | 'workflow_focus' | 'useful_signal' | 'uncategorized';
69
69
  export type FeedbackIntakeConfidence = 'high' | 'medium' | 'low';
70
70
  export interface FeedbackIntakeReport {
71
71
  schemaVersion: 1;
@@ -76,6 +76,10 @@ export interface FeedbackIntakeReport {
76
76
  taskTitle: string;
77
77
  suggestedCommand: string;
78
78
  nextCommand: string;
79
+ agentloopTaskCommand: string;
80
+ followUpCommands: string[];
81
+ feedbackSummaryCommand?: string;
82
+ dogfoodCommand?: string;
79
83
  feedbackResponse: DogfoodFeedbackResponse;
80
84
  appended?: {
81
85
  path: string;
@@ -100,6 +104,14 @@ export interface DogfoodWebsiteProof {
100
104
  bullets: string[];
101
105
  markdown: string;
102
106
  }
107
+ export interface DogfoodRepoDiscovery {
108
+ roots: string[];
109
+ candidates: string[];
110
+ selected: string[];
111
+ targetRepoCount: number;
112
+ missingRepoCount: number;
113
+ command: string;
114
+ }
103
115
  export interface DogfoodMarketValidation {
104
116
  status: 'proven' | 'needs_feedback' | 'needs_more_repos' | 'needs_tuning';
105
117
  summary: string;
@@ -175,6 +187,7 @@ export interface DogfoodRepoResult {
175
187
  gaps: string[];
176
188
  feedbackQuestions: string[];
177
189
  validation: DogfoodRepoValidation;
190
+ feedbackCaptureCommand?: string;
178
191
  nextCommands: string[];
179
192
  }
180
193
  export interface DogfoodReport {
@@ -198,5 +211,6 @@ export interface DogfoodReport {
198
211
  falsePositiveReports: number;
199
212
  };
200
213
  marketValidation: DogfoodMarketValidation;
214
+ repoDiscovery?: DogfoodRepoDiscovery;
201
215
  suggestedNextActions: PreflightSuggestedAction[];
202
216
  }
@@ -1,5 +1,6 @@
1
1
  import type { ExportInfo, ImportInfo, Issue } from './common.js';
2
2
  import type { FileHotspot } from './hotspots.js';
3
+ import type { PreflightSuggestedAction } from './preflight.js';
3
4
  export interface FileInspection {
4
5
  relativePath: string;
5
6
  exists: boolean;
@@ -20,6 +21,8 @@ export interface FileInspection {
20
21
  fanOut?: number | null;
21
22
  /** Adapter id (e.g. 'javascript', 'python'). Set when the graph was available. */
22
23
  language?: string;
24
+ /** Concise follow-up commands for the inspected file. */
25
+ suggestedNextActions?: PreflightSuggestedAction[];
23
26
  /**
24
27
  * Per-function McCabe CC (0.13.0+). Sorted by cyclomaticComplexity desc.
25
28
  * Empty array when the file has no functions or the adapter doesn't yet