projscan 3.0.0 → 3.0.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.
Files changed (48) hide show
  1. package/README.md +24 -24
  2. package/dist/cli/commands/dataflow.js +6 -1
  3. package/dist/cli/commands/dataflow.js.map +1 -1
  4. package/dist/core/agentBrief.js +31 -1
  5. package/dist/core/agentBrief.js.map +1 -1
  6. package/dist/core/dataflow.d.ts +4 -0
  7. package/dist/core/dataflow.js +91 -8
  8. package/dist/core/dataflow.js.map +1 -1
  9. package/dist/core/dataflowFilters.d.ts +10 -0
  10. package/dist/core/dataflowFilters.js +44 -0
  11. package/dist/core/dataflowFilters.js.map +1 -0
  12. package/dist/core/graphCorpus.d.ts +5 -0
  13. package/dist/core/graphCorpus.js +46 -0
  14. package/dist/core/graphCorpus.js.map +1 -0
  15. package/dist/core/impact.js +34 -0
  16. package/dist/core/impact.js.map +1 -1
  17. package/dist/core/issueEngine.js +25 -1
  18. package/dist/core/issueEngine.js.map +1 -1
  19. package/dist/core/plugins.d.ts +10 -3
  20. package/dist/core/plugins.js +2 -2
  21. package/dist/core/plugins.js.map +1 -1
  22. package/dist/core/preflight.js +75 -6
  23. package/dist/core/preflight.js.map +1 -1
  24. package/dist/core/review.js +29 -20
  25. package/dist/core/review.js.map +1 -1
  26. package/dist/core/reviewDataflow.d.ts +6 -0
  27. package/dist/core/reviewDataflow.js +21 -0
  28. package/dist/core/reviewDataflow.js.map +1 -0
  29. package/dist/core/taint.js +35 -6
  30. package/dist/core/taint.js.map +1 -1
  31. package/dist/core/watcher.d.ts +2 -2
  32. package/dist/core/watcher.js +103 -17
  33. package/dist/core/watcher.js.map +1 -1
  34. package/dist/core/workplan.js +6 -6
  35. package/dist/core/workplan.js.map +1 -1
  36. package/dist/index.d.ts +3 -2
  37. package/dist/index.js +1 -0
  38. package/dist/index.js.map +1 -1
  39. package/dist/mcp/tools/dataflow.js +12 -1
  40. package/dist/mcp/tools/dataflow.js.map +1 -1
  41. package/dist/projscan-sbom.cdx.json +6 -6
  42. package/dist/tool-manifest.json +10 -2
  43. package/dist/types.d.ts +50 -2
  44. package/docs/PLUGIN-AUTHORING.md +11 -3
  45. package/docs/PLUGIN-GALLERY.md +8 -0
  46. package/docs/examples/plugins/graph-context.mjs +27 -0
  47. package/docs/examples/plugins/graph-context.projscan-plugin.json +8 -0
  48. package/package.json +3 -2
@@ -130,8 +130,8 @@ function tasksFromPreflight(reasons) {
130
130
  why: 'Review, taint, and dataflow findings describe merge safety, new risky flows, and structural changes that need explicit handling before handoff.',
131
131
  evidence: review.map(reasonToEvidence),
132
132
  files: filesFromReasons(review),
133
- suggestedTools: ['projscan_review', 'projscan_taint', 'projscan_dataflow'],
134
- commands: ['projscan review --format json', 'projscan dataflow --format json', 'projscan preflight --mode before_merge --format json'],
133
+ suggestedTools: ['projscan_review', 'projscan_semantic_graph', 'projscan_taint', 'projscan_dataflow'],
134
+ commands: ['projscan review --format json', 'projscan semantic-graph --format json', 'projscan dataflow --format json', 'projscan preflight --mode before_merge --format json'],
135
135
  expected: 'The review verdict is ok or the remaining review items are intentionally documented.',
136
136
  }));
137
137
  }
@@ -280,8 +280,8 @@ function modeTasks(mode, verdict, touchedFiles) {
280
280
  why: 'Hardening mode should prove the repo can reject compromised dependencies, unsafe scripts, and known audit findings.',
281
281
  evidence: [{ source: 'supply-chain', message: 'hardening mode pairs preflight evidence with release security gates' }],
282
282
  files: ['package.json', 'package-lock.json'],
283
- suggestedTools: ['projscan_preflight', 'projscan_doctor', 'npm audit'],
284
- commands: ['projscan preflight --format json', 'npm audit --audit-level=moderate'],
283
+ suggestedTools: ['projscan_preflight', 'projscan_doctor', 'projscan_semantic_graph', 'npm audit'],
284
+ commands: ['projscan preflight --format json', 'projscan semantic-graph --format json', 'npm audit --audit-level=moderate'],
285
285
  expected: 'Preflight has no supply-chain blockers and npm audit reports no moderate-or-higher vulnerabilities.',
286
286
  }));
287
287
  }
@@ -306,8 +306,8 @@ function modeTasks(mode, verdict, touchedFiles) {
306
306
  why: 'Commit and merge gates should be based on changed-file evidence, review verdict, taint status, and focused verification commands.',
307
307
  evidence: [{ source: 'review', message: `${mode} mode composes review, preflight, and changed-file checks` }],
308
308
  files: touchedFiles,
309
- suggestedTools: ['projscan_preflight', 'projscan_review'],
310
- commands: [`projscan preflight --mode ${mode} --format json`, 'npm test', 'npm run lint'],
309
+ suggestedTools: ['projscan_preflight', 'projscan_review', 'projscan_semantic_graph'],
310
+ commands: [`projscan preflight --mode ${mode} --format json`, 'projscan semantic-graph --format json', 'npm test', 'npm run lint'],
311
311
  expected: 'Preflight is proceed or the remaining caution/block reasons are fixed before handoff.',
312
312
  }));
313
313
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workplan.js","sourceRoot":"","sources":["../../src/core/workplan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workplan.js","sourceRoot":"","sources":["../../src/core/workplan.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -32,7 +32,8 @@ export { getChangedFiles } from './utils/changedFiles.js';
32
32
  export { issuesToSarif } from './reporters/sarifReporter.js';
33
33
  export { computeReview } from './core/review.js';
34
34
  export { buildSemanticGraph } from './core/semanticGraph.js';
35
- export { computeDataflow } from './core/dataflow.js';
35
+ export { computeDataflow, type DataflowOptions } from './core/dataflow.js';
36
+ export { computeGraphCorpus } from './core/graphCorpus.js';
36
37
  export { computeWorkplan } from './core/workplan.js';
37
38
  export { computeReleaseTrain } from './core/releaseTrain.js';
38
39
  export { computeBugHunt } from './core/bugHunt.js';
@@ -53,4 +54,4 @@ export { getPromptDefinitions } from './mcp/prompts.js';
53
54
  export { getResourceDefinitions } from './mcp/resources.js';
54
55
  export { BUILTIN_LANGUAGE_IDS } from './core/languages/LanguageAdapter.js';
55
56
  export type { BuiltinLanguageId, LanguageId, LanguageAdapter } from './core/languages/LanguageAdapter.js';
56
- export type { ScanResult, FileEntry, DirectoryNode, LanguageBreakdown, LanguageStat, FrameworkResult, DetectedFramework, DependencyReport, DependencyRisk, Issue, IssueLocation, IssueSeverity, Fix, FixResult, FileExplanation, FileInspection, FunctionDetail, ImportInfo, ExportInfo, ArchitectureLayer, AnalysisReport, AgentBriefGuardrail, AgentBriefIntent, AgentBriefItem, AgentBriefReport, ReportFormat, FileHotspot, HotspotReport, AuthorShare, BaselineHotspot, HotspotDelta, HotspotDiffSummary, McpToolDefinition, McpPromptDefinition, McpResourceDefinition, ProjscanConfig, LoadedConfig, SemverDrift, OutdatedPackage, OutdatedReport, AuditSeverity, AuditFinding, AuditReport, UpgradePreview, CoverageSource, FileCoverage, CoverageReport, CoverageJoinedHotspot, CoverageJoinedReport, ReviewReport, ReviewFile, ReviewCycle, ReviewDataflowRisk, ReviewFunction, ReviewDependencyChange, FixSuggestion, IssueExplanation, ImportPolicyRule, ImpactReport, ImpactNode, DataflowReport, DataflowRisk, DataflowRiskConfidence, DataflowRiskKind, DataflowRiskSeverity, SemanticGraphEdge, SemanticGraphEdgeKind, SemanticGraphNode, SemanticGraphNodeKind, SemanticGraphReport, BugHuntFinding, BugHuntReport, BugHuntVerdict, EvidencePackArtifact, EvidencePackArtifactStatus, EvidencePackReport, EvidencePackVerdict, RegressionPlanLevel, RegressionPlanReport, RegressionPlanTarget, RegressionPlanVerdict, QualityScorecardDimension, QualityScorecardReport, QualityScorecardRisk, QualityScorecardStatus, QualityScorecardVerdict, ReleaseTrainReport, ReleaseTrainTask, ReleaseTrainTrack, WorkplanCoordination, WorkplanEvidence, WorkplanMode, WorkplanPriority, WorkplanReport, WorkplanTask, WorkplanTopRisk, WorkplanVerification, } from './types.js';
57
+ export type { ScanResult, FileEntry, DirectoryNode, LanguageBreakdown, LanguageStat, FrameworkResult, DetectedFramework, DependencyReport, DependencyRisk, Issue, IssueLocation, IssueSeverity, Fix, FixResult, FileExplanation, FileInspection, FunctionDetail, ImportInfo, ExportInfo, ArchitectureLayer, AnalysisReport, AgentBriefGuardrail, AgentBriefIntent, AgentBriefItem, AgentBriefReport, ReportFormat, FileHotspot, HotspotReport, AuthorShare, BaselineHotspot, HotspotDelta, HotspotDiffSummary, McpToolDefinition, McpPromptDefinition, McpResourceDefinition, ProjscanConfig, LoadedConfig, SemverDrift, OutdatedPackage, OutdatedReport, AuditSeverity, AuditFinding, AuditReport, UpgradePreview, CoverageSource, FileCoverage, CoverageReport, CoverageJoinedHotspot, CoverageJoinedReport, ReviewReport, ReviewFile, ReviewCycle, ReviewDataflowRisk, ReviewFunction, ReviewDependencyChange, FixSuggestion, IssueExplanation, ImportPolicyRule, ImpactReport, ImpactNode, GraphCorpusFixtureMetrics, GraphCorpusReport, DataflowReport, DataflowRisk, DataflowRiskConfidence, DataflowRiskKind, DataflowRiskSeverity, SemanticGraphEdge, SemanticGraphEdgeKind, SemanticGraphNode, SemanticGraphNodeKind, SemanticGraphReport, BugHuntFinding, BugHuntReport, BugHuntVerdict, EvidencePackArtifact, EvidencePackArtifactStatus, EvidencePackReport, EvidencePackVerdict, RegressionPlanLevel, RegressionPlanReport, RegressionPlanTarget, RegressionPlanVerdict, QualityScorecardDimension, QualityScorecardReport, QualityScorecardRisk, QualityScorecardStatus, QualityScorecardVerdict, ReleaseTrainReport, ReleaseTrainTask, ReleaseTrainTrack, WorkplanCoordination, WorkplanEvidence, WorkplanMode, WorkplanPriority, WorkplanReport, WorkplanTask, WorkplanTopRisk, WorkplanVerification, } from './types.js';
package/dist/index.js CHANGED
@@ -31,6 +31,7 @@ export { issuesToSarif } from './reporters/sarifReporter.js';
31
31
  export { computeReview } from './core/review.js';
32
32
  export { buildSemanticGraph } from './core/semanticGraph.js';
33
33
  export { computeDataflow } from './core/dataflow.js';
34
+ export { computeGraphCorpus } from './core/graphCorpus.js';
34
35
  export { computeWorkplan } from './core/workplan.js';
35
36
  export { computeReleaseTrain } from './core/releaseTrain.js';
36
37
  export { computeBugHunt } from './core/bugHunt.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,14 @@ export const dataflowTool = {
22
22
  type: 'number',
23
23
  description: 'Maximum risks to return. Default 50, max 500.',
24
24
  },
25
+ include_tests: {
26
+ type: 'boolean',
27
+ description: 'Include dataflow risks that touch test files. Default false.',
28
+ },
29
+ include_broad_file_io: {
30
+ type: 'boolean',
31
+ description: 'Include broad readFile/writeFile-style default risks. Default false.',
32
+ },
25
33
  max_tokens: {
26
34
  type: 'number',
27
35
  description: 'Cap the response to roughly this many tokens.',
@@ -47,7 +55,10 @@ export const dataflowTool = {
47
55
  const maxRisks = typeof args.max_risks === 'number' && Number.isFinite(args.max_risks)
48
56
  ? Math.max(1, Math.min(500, Math.floor(args.max_risks)))
49
57
  : 50;
50
- const report = computeDataflow(graph, { sources, sinks });
58
+ const report = computeDataflow(graph, { sources, sinks }, {
59
+ includeTests: args.include_tests === true,
60
+ includeBroadFileIo: args.include_broad_file_io === true,
61
+ });
51
62
  return {
52
63
  ...report,
53
64
  risks: report.risks.slice(0, maxRisks),
@@ -1 +1 @@
1
- {"version":3,"file":"dataflow.js","sourceRoot":"","sources":["../../../src/mcp/tools/dataflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,MAAM,CAAC,MAAM,YAAY,GAAY;IACnC,IAAI,EAAE,mBAAmB;IACzB,WAAW,EACT,iMAAiM;IACnM,WAAW,EAAE;QACX,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,+EAA+E;aAC7F;YACD,KAAK,EAAE;gBACL,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;gBACzB,WAAW,EAAE,2EAA2E;aACzF;YACD,SAAS,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+CAA+C;aAC7D;YACD,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,+CAA+C;aAC7D;SACF;KACF;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;QAChC,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,cAAc,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QACzD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG;YACd,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,CAAC;YAChC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;gBAC7B,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;gBAC5E,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;QACF,MAAM,KAAK,GAAG;YACZ,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC;YAC9B,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC;gBAC3B,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,KAAK,EAAmB,EAAE,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC;gBAC1E,CAAC,CAAC,EAAE,CAAC;SACR,CAAC;QACF,MAAM,QAAQ,GACZ,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;YACnE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;YACxD,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1D,OAAO;YACL,GAAG,MAAM;YACT,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC;YACtC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,QAAQ,IAAI,MAAM,CAAC,SAAS;SAC9D,CAAC;IACJ,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"dataflow.js","sourceRoot":"","sources":["../../../src/mcp/tools/dataflow.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,23 @@
1
1
  {
2
2
  "bomFormat": "CycloneDX",
3
3
  "specVersion": "1.5",
4
- "serialNumber": "urn:uuid:1017d452-e5cf-4028-813c-ca8e910b840b",
4
+ "serialNumber": "urn:uuid:43e993dc-55dd-4723-a95a-ad09b6117db4",
5
5
  "version": 1,
6
6
  "metadata": {
7
- "timestamp": "2026-05-23T21:32:37.336Z",
7
+ "timestamp": "2026-05-26T20:40:36.688Z",
8
8
  "tools": [
9
9
  {
10
10
  "vendor": "projscan",
11
11
  "name": "projscan-sbom-generator",
12
- "version": "3.0.0"
12
+ "version": "3.0.1"
13
13
  }
14
14
  ],
15
15
  "component": {
16
16
  "type": "application",
17
- "bom-ref": "pkg:npm/projscan@3.0.0",
17
+ "bom-ref": "pkg:npm/projscan@3.0.1",
18
18
  "name": "projscan",
19
- "version": "3.0.0",
20
- "purl": "pkg:npm/projscan@3.0.0"
19
+ "version": "3.0.1",
20
+ "purl": "pkg:npm/projscan@3.0.1"
21
21
  }
22
22
  },
23
23
  "components": [
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "projscan",
3
- "version": "3.0.0",
3
+ "version": "3.0.1",
4
4
  "mcpProtocolVersion": "2025-03-26",
5
- "generatedAt": "2026-05-23T21:32:42.491Z",
5
+ "generatedAt": "2026-05-26T20:40:40.856Z",
6
6
  "toolCount": 39,
7
7
  "tools": [
8
8
  {
@@ -692,6 +692,14 @@
692
692
  "type": "number",
693
693
  "description": "Maximum risks to return. Default 50, max 500."
694
694
  },
695
+ "include_tests": {
696
+ "type": "boolean",
697
+ "description": "Include dataflow risks that touch test files. Default false."
698
+ },
699
+ "include_broad_file_io": {
700
+ "type": "boolean",
701
+ "description": "Include broad readFile/writeFile-style default risks. Default false."
702
+ },
695
703
  "max_tokens": {
696
704
  "type": "number",
697
705
  "description": "Cap the response to roughly this many tokens."
package/dist/types.d.ts CHANGED
@@ -212,7 +212,7 @@ export interface HealthScore {
212
212
  }
213
213
  export type PreflightMode = 'before_edit' | 'before_commit' | 'before_merge';
214
214
  export type PreflightVerdict = 'proceed' | 'caution' | 'block';
215
- export type PreflightReasonSource = 'doctor' | 'review' | 'taint' | 'session' | 'plugin' | 'supply-chain' | 'memory' | 'changed-files' | 'hotspots' | 'git' | 'format';
215
+ export type PreflightReasonSource = 'doctor' | 'review' | 'taint' | 'session' | 'plugin' | 'supply-chain' | 'memory' | 'changed-files' | 'hotspots' | 'git' | 'format' | 'release';
216
216
  export interface PreflightReason {
217
217
  severity: IssueSeverity;
218
218
  source: PreflightReasonSource;
@@ -232,6 +232,15 @@ export interface PreflightSuggestedAction {
232
232
  tool?: string;
233
233
  args?: Record<string, unknown>;
234
234
  }
235
+ export interface PreflightReleaseScaleEvidence {
236
+ detected: boolean;
237
+ changedFiles: number;
238
+ threshold: number;
239
+ reviewVerdict?: ReviewReport['verdict'];
240
+ reviewSummary?: string;
241
+ concreteBlockers: string[];
242
+ explanation: string;
243
+ }
235
244
  export interface PreflightEvidence {
236
245
  health?: {
237
246
  score: number;
@@ -274,6 +283,7 @@ export interface PreflightEvidence {
274
283
  errorIssues: number;
275
284
  warningIssues: number;
276
285
  };
286
+ releaseScale?: PreflightReleaseScaleEvidence;
277
287
  }
278
288
  export interface PreflightReport {
279
289
  schemaVersion: 1;
@@ -290,7 +300,7 @@ export interface PreflightReport {
290
300
  export type WorkplanMode = PreflightMode | 'refactor' | 'release' | 'bug_hunt' | 'hardening';
291
301
  export type WorkplanPriority = 'p0' | 'p1' | 'p2';
292
302
  export interface WorkplanEvidence {
293
- source: PreflightReasonSource | 'coordination' | 'release' | 'verification';
303
+ source: PreflightReasonSource | 'coordination' | 'release' | 'verification' | 'graph';
294
304
  message: string;
295
305
  severity?: IssueSeverity;
296
306
  file?: string;
@@ -477,6 +487,16 @@ export interface AgentBriefGuardrail {
477
487
  reason: string;
478
488
  command: string;
479
489
  }
490
+ export interface GraphEvidenceSummary {
491
+ schemaVersion: 1;
492
+ changedFiles?: number;
493
+ changedFunctions?: number;
494
+ totalFunctions: number;
495
+ totalPackages: number;
496
+ totalCallEdges: number;
497
+ dataflowRisks: number;
498
+ topPackages: string[];
499
+ }
480
500
  export interface AgentBriefReport {
481
501
  schemaVersion: 1;
482
502
  intent: AgentBriefIntent;
@@ -491,12 +511,29 @@ export interface AgentBriefReport {
491
511
  }>;
492
512
  touchedFiles: string[];
493
513
  conflicts: number;
514
+ graph?: GraphEvidenceSummary;
494
515
  };
495
516
  focus: AgentBriefItem[];
496
517
  guardrails: AgentBriefGuardrail[];
497
518
  suggestedNextActions: PreflightSuggestedAction[];
498
519
  truncated?: boolean;
499
520
  }
521
+ export interface GraphCorpusFixtureMetrics {
522
+ name: string;
523
+ fixture: string;
524
+ files: number;
525
+ functions: number;
526
+ packages: number;
527
+ symbols: number;
528
+ importEdges: number;
529
+ callEdges: number;
530
+ dataflowRisks: number;
531
+ }
532
+ export interface GraphCorpusReport {
533
+ schemaVersion: 1;
534
+ fixtures: GraphCorpusFixtureMetrics[];
535
+ totals: Omit<GraphCorpusFixtureMetrics, 'name' | 'fixture'>;
536
+ }
500
537
  export type QualityScorecardVerdict = 'excellent' | 'healthy' | 'needs_attention' | 'blocked';
501
538
  export type QualityScorecardStatus = 'pass' | 'watch' | 'fail';
502
539
  export interface QualityScorecardDimension {
@@ -1139,6 +1176,8 @@ export interface ReviewReport {
1139
1176
  * legacy source-to-sink taint flow list. Empty when unavailable or clean.
1140
1177
  */
1141
1178
  newDataflowRisks: ReviewDataflowRisk[];
1179
+ /** 3.5+ — compact graph/dataflow evidence for review consumers. */
1180
+ graphEvidence?: GraphEvidenceSummary;
1142
1181
  /** 'ok' = ship it; 'review' = needs careful look; 'block' = strongly suggests rework. */
1143
1182
  verdict: 'ok' | 'review' | 'block';
1144
1183
  /** One-line bullets explaining the verdict. */
@@ -1189,6 +1228,13 @@ export interface ImpactNode {
1189
1228
  */
1190
1229
  repo?: string;
1191
1230
  }
1231
+ export interface ImpactBoundarySummary {
1232
+ repo: string;
1233
+ packageName: string;
1234
+ owner: string;
1235
+ files: string[];
1236
+ reachableFiles: number;
1237
+ }
1192
1238
  export interface ImpactReport {
1193
1239
  available: boolean;
1194
1240
  reason?: string;
@@ -1219,6 +1265,8 @@ export interface ImpactReport {
1219
1265
  * was false or the workspace had no siblings.
1220
1266
  */
1221
1267
  totalReachableByRepo?: Record<string, number>;
1268
+ /** 3.5+ — cross-repo package/ownership boundaries that mention the target. */
1269
+ boundarySummary?: ImpactBoundarySummary[];
1222
1270
  /**
1223
1271
  * True when traversal hit `maxDistance` before exhausting the graph.
1224
1272
  * Items beyond the limit are omitted from `reachable`.
@@ -65,7 +65,7 @@ The machine-readable manifest schema lives at
65
65
  [`docs/examples/plugins/`](examples/plugins/) are tested in CI.
66
66
 
67
67
  For packaged examples you can copy into a repo, see the
68
- [Plugin Gallery](PLUGIN-GALLERY.md). It includes policy, team health, security,
68
+ [Plugin Gallery](PLUGIN-GALLERY.md). It includes policy, graph-context, team health, security,
69
69
  and release-readiness examples.
70
70
 
71
71
  ## Scaffold
@@ -84,8 +84,8 @@ It refuses to overwrite existing files.
84
84
 
85
85
  ## Analyzer Module
86
86
 
87
- The module must export a `check(rootPath, files)` function, either as the
88
- default export or a named export.
87
+ The module must export a `check(rootPath, files, context?)` function, either as the
88
+ default export or a named export. The optional third argument exposes lazy read-only graph helpers for analyzers that need deeper context.
89
89
 
90
90
  ```js
91
91
  export default {
@@ -117,6 +117,14 @@ Required issue fields:
117
117
 
118
118
  Malformed issues are dropped so one bad plugin cannot poison the issue stream.
119
119
 
120
+ The analyzer `context` argument currently exposes:
121
+
122
+ - `getCodeGraph()`: the underlying code graph used by core analysis.
123
+ - `getSemanticGraph()`: the stable v3 semantic graph payload.
124
+ - `getDataflow()`: the focused dataflow report.
125
+
126
+ The packaged `graph-context` example under `docs/examples/plugins/` demonstrates the pattern without requiring a manifest schema bump.
127
+
120
128
  ## Reporter Module
121
129
 
122
130
  Reporter plugins are CLI-only. The module must export a
@@ -32,6 +32,14 @@ Files:
32
32
  - `docs/examples/plugins/security-radar.projscan-plugin.json`
33
33
  - `docs/examples/plugins/security-radar.mjs`
34
34
 
35
+ ### `graph-context`
36
+
37
+ Demonstrates analyzer access to the optional graph/dataflow context. It reads the semantic graph and dataflow report through `context.getSemanticGraph()` and `context.getDataflow()` and emits a compact architecture summary issue.
38
+
39
+ Files:
40
+ - `docs/examples/plugins/graph-context.projscan-plugin.json`
41
+ - `docs/examples/plugins/graph-context.mjs`
42
+
35
43
  ## Reporter Plugins
36
44
 
37
45
  ### `team-radar`
@@ -0,0 +1,27 @@
1
+ export default {
2
+ check: async (_rootPath, files, context) => {
3
+ if (!context) return [];
4
+
5
+ const [semanticGraph, dataflow] = await Promise.all([
6
+ context.getSemanticGraph(),
7
+ context.getDataflow(),
8
+ ]);
9
+
10
+ const severity = dataflow.riskCount > 0 ? 'warning' : 'info';
11
+ const fileCount = files.length;
12
+ const functionCount = semanticGraph.metrics.totalFunctions;
13
+ const callEdges = semanticGraph.metrics.totalEdges;
14
+
15
+ return [
16
+ {
17
+ id: 'graph-context-summary',
18
+ title: 'Graph context available',
19
+ description:
20
+ `Plugin received ${fileCount} file(s), ${functionCount} function(s), ${callEdges} semantic edge(s), and ${dataflow.riskCount} dataflow risk(s).`,
21
+ severity,
22
+ category: 'architecture',
23
+ fixAvailable: false,
24
+ },
25
+ ];
26
+ },
27
+ };
@@ -0,0 +1,8 @@
1
+ {
2
+ "schemaVersion": 1,
3
+ "name": "graph-context",
4
+ "kind": "analyzer",
5
+ "module": "./graph-context.mjs",
6
+ "category": "architecture",
7
+ "description": "Demonstrates analyzer access to semantic graph and dataflow context"
8
+ }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "projscan",
3
3
  "mcpName": "io.github.abhiyoheswaran1/projscan",
4
- "version": "3.0.0",
4
+ "version": "3.0.1",
5
5
  "description": "Agent-first code intelligence. MCP server (2025-03-26) with AST parsing for JavaScript, TypeScript, Python, Go, Java, Ruby, Rust, PHP, C#, Kotlin, Swift, and C++; stable v3 semantic graph (projscan_semantic_graph), dataflow risk engine with bridge-helper detection (projscan_dataflow), code graph, file + per-function AST cyclomatic complexity, per-function fan-in + fan-out, coupling + cycle detection, structural PR diff with HTML reporter, coverage report with HTML reporter, intent-grounded one-call PR review (projscan_review with optional `intent` arg, new taint flows, contract changes, and newDataflowRisks) and long-running PR-watch mode with structured per-bucket deltas (projscan_review_watch), agent workplans (projscan_workplan), bug-hunt queues (projscan_bug_hunt), product-line planning (projscan_release_train), evidence packs (projscan_evidence_pack), regression planning (projscan_regression_plan), agent briefs (projscan_agent_brief), quality scorecards (projscan_quality_scorecard), and preflight with supply-chain IOC evidence, rule-driven fix suggestions + mechanical apply layer with rollback (projscan_apply_fix, projscan_fix_suggest, projscan_explain_issue), source-to-sink taint analysis (projscan_taint) with truncation reporting, transitive blast-radius analysis with cross-repo mode (projscan_impact for files and symbols), cross-repo workspace registration + intelligence (projscan_workspace_graph), per-function semantic search chunks (sub-file embeddings), per-rule confidence + severity drift + cost-summary analytics with live streaming (projscan_cost_summary), stable local analyzer + reporter plugin API (projscan_plugin, CLI --reporter, opt-in via PROJSCAN_PLUGINS_PREVIEW=1), monorepo workspace awareness with cross-package import policy + per-package dependencies / outdated / audit, BM25 + optional semantic search, cursor pagination, progress notifications, context-budgeted output, and a stable-surface CI guard. CLI on the side.",
6
6
  "type": "module",
7
7
  "main": "./dist/index.js",
@@ -32,7 +32,8 @@
32
32
  "release:check": "node scripts/release-check.mjs",
33
33
  "security:release-gate": "node scripts/release-gate.mjs",
34
34
  "sbom:generate": "node scripts/generate-sbom.mjs",
35
- "prepare": "npm run build"
35
+ "prepare": "npm run build",
36
+ "check:graph-corpus": "node scripts/check-graph-corpus.mjs"
36
37
  },
37
38
  "keywords": [
38
39
  "cli",