projscan 4.0.0 → 4.1.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 (39) hide show
  1. package/README.md +332 -24
  2. package/dist/cli/commands/route.js +1 -0
  3. package/dist/cli/commands/route.js.map +1 -1
  4. package/dist/cli/commands/semanticGraph.js +27 -0
  5. package/dist/cli/commands/semanticGraph.js.map +1 -1
  6. package/dist/cli/commands/start.js +74 -1
  7. package/dist/cli/commands/start.js.map +1 -1
  8. package/dist/core/dependencyAnalyzer.js +172 -0
  9. package/dist/core/dependencyAnalyzer.js.map +1 -1
  10. package/dist/core/intentRouter.d.ts +8 -1
  11. package/dist/core/intentRouter.js +2186 -22
  12. package/dist/core/intentRouter.js.map +1 -1
  13. package/dist/core/issueEngine.js +6 -7
  14. package/dist/core/issueEngine.js.map +1 -1
  15. package/dist/core/onboarding.d.ts +2 -2
  16. package/dist/core/onboarding.js +29 -5
  17. package/dist/core/onboarding.js.map +1 -1
  18. package/dist/core/start.d.ts +1 -0
  19. package/dist/core/start.js +2010 -10
  20. package/dist/core/start.js.map +1 -1
  21. package/dist/mcp/server.d.ts +1 -1
  22. package/dist/mcp/server.js +14 -5
  23. package/dist/mcp/server.js.map +1 -1
  24. package/dist/mcp/tools/start.js +6 -1
  25. package/dist/mcp/tools/start.js.map +1 -1
  26. package/dist/projscan-sbom.cdx.json +6 -6
  27. package/dist/reporters/consoleReporter.js +19 -0
  28. package/dist/reporters/consoleReporter.js.map +1 -1
  29. package/dist/reporters/markdownReporter.js +19 -0
  30. package/dist/reporters/markdownReporter.js.map +1 -1
  31. package/dist/tool-manifest.json +6 -2
  32. package/dist/types.d.ts +83 -0
  33. package/docs/GUIDE.md +1565 -0
  34. package/docs/ROADMAP.md +219 -0
  35. package/docs/demos/projscan-4-1-demo.html +648 -0
  36. package/docs/projscan-mission-control.png +0 -0
  37. package/docs/projscan-proof-router.png +0 -0
  38. package/package.json +8 -1
  39. package/scripts/capture-readme-assets.mjs +60 -0
@@ -1 +1 @@
1
- {"version":3,"file":"semanticGraph.js","sourceRoot":"","sources":["../../../src/cli/commands/semanticGraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semanticGraph.js","sourceRoot":"","sources":["../../../src/cli/commands/semanticGraph.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,8 @@ export function registerStart() {
6
6
  program
7
7
  .command('start')
8
8
  .description('Orient an engineer or agent with the next best workflow for this repo')
9
- .option('--mode <mode>', 'before_edit, before_commit, before_merge, refactor, release, bug_hunt, or hardening', 'before_edit')
9
+ .option('--mode <mode>', 'before_edit, before_commit, before_merge, refactor, release, bug_hunt, or hardening')
10
+ .option('--intent <text>', 'plain-language goal to route into the next best action')
10
11
  .option('--max-tasks <count>', 'maximum workplan tasks to inspect', parsePositiveInt)
11
12
  .option('--max-risks <count>', 'maximum start risks to return', parsePositiveInt)
12
13
  .option('--include-handoff', 'include a compact handoff payload')
@@ -18,6 +19,7 @@ export function registerStart() {
18
19
  try {
19
20
  const report = await computeStartReport(getRootPath(), {
20
21
  mode,
22
+ intent: typeof cmdOpts.intent === 'string' ? cmdOpts.intent : undefined,
21
23
  maxTasks: cmdOpts.maxTasks,
22
24
  maxRisks: cmdOpts.maxRisks,
23
25
  includeHandoff: cmdOpts.includeHandoff === true,
@@ -35,6 +37,8 @@ export function registerStart() {
35
37
  });
36
38
  }
37
39
  function parseMode(value) {
40
+ if (typeof value === 'undefined')
41
+ return undefined;
38
42
  if (typeof value === 'string' && isWorkplanMode(value))
39
43
  return value;
40
44
  console.error(chalk.red(`Unsupported --mode ${String(value)}.`));
@@ -51,9 +55,13 @@ function parsePositiveInt(value) {
51
55
  function printStart(report) {
52
56
  console.log(chalk.bold(`Start: ${report.mode}`));
53
57
  console.log(report.summary);
58
+ console.log(`Mode: ${modeSourceLabel(report.modeSource)}`);
59
+ console.log(chalk.dim(report.modeReason));
54
60
  console.log(`Health: ${report.evidence.healthScore}/100 (${report.evidence.qualityVerdict})`);
55
61
  console.log(`Workflow: ${report.recommendedWorkflow.name}`);
56
62
  console.log('');
63
+ printMissionControl(report);
64
+ console.log('');
57
65
  console.log(chalk.bold('First 10 Minutes'));
58
66
  for (const step of report.firstTenMinutes.commands) {
59
67
  console.log(`- ${step.label}: ${step.command}`);
@@ -88,6 +96,71 @@ function printStart(report) {
88
96
  }
89
97
  }
90
98
  }
99
+ function modeSourceLabel(source) {
100
+ if (source === 'intent')
101
+ return 'inferred from intent';
102
+ if (source === 'explicit')
103
+ return 'explicit';
104
+ return 'default';
105
+ }
106
+ function printMissionControl(report) {
107
+ const mission = report.missionControl;
108
+ console.log(chalk.bold('Mission Control'));
109
+ if (mission.intent)
110
+ console.log(`Intent: ${mission.intent}`);
111
+ console.log(`Status: ${mission.status}`);
112
+ console.log(mission.headline);
113
+ if (mission.routedIntent) {
114
+ console.log(`Route: ${mission.routedIntent.category} via ${mission.routedIntent.tool} (${routeEvidence(mission.routedIntent)})`);
115
+ }
116
+ if (mission.primaryAction.command)
117
+ console.log(chalk.cyan(mission.primaryAction.command));
118
+ console.log(chalk.dim(mission.whyNow));
119
+ if (mission.actionPlan.length > 0) {
120
+ console.log(chalk.bold('Action Plan'));
121
+ for (const action of mission.actionPlan.slice(0, 4)) {
122
+ if (action.command)
123
+ console.log(`- ${action.label}: ${action.command}`);
124
+ }
125
+ }
126
+ if (mission.readyActions.length > 0) {
127
+ console.log(chalk.bold('Ready Now'));
128
+ for (const action of mission.readyActions.slice(0, 4)) {
129
+ if (action.command)
130
+ console.log(`- ${action.label}: ${action.command}`);
131
+ }
132
+ }
133
+ if (mission.unresolvedInputs.length > 0) {
134
+ console.log(chalk.bold('Needs Input'));
135
+ for (const input of mission.unresolvedInputs.slice(0, 4)) {
136
+ console.log(`- ${input.name}: replace ${input.placeholder} after ${input.sourceAction}`);
137
+ }
138
+ }
139
+ if (mission.alternatives && mission.alternatives.length > 0) {
140
+ console.log(chalk.bold('Also Consider'));
141
+ for (const route of mission.alternatives.slice(0, 3)) {
142
+ console.log(`- ${route.category}: ${route.cli} (${routeEvidence(route)})`);
143
+ }
144
+ }
145
+ if (mission.successCriteria.length > 0) {
146
+ console.log(chalk.bold('Done When'));
147
+ for (const criterion of mission.successCriteria.slice(0, 4)) {
148
+ console.log(`- ${criterion}`);
149
+ }
150
+ }
151
+ if (mission.proofCommands.length > 0) {
152
+ console.log(chalk.bold('Ready Proof'));
153
+ console.log(chalk.dim(mission.proofSummary));
154
+ for (const command of mission.proofCommands.slice(0, 3)) {
155
+ console.log(chalk.dim(`- ${command}`));
156
+ }
157
+ }
158
+ }
159
+ function routeEvidence(route) {
160
+ if (!route)
161
+ return 'confidence: low; matched: none';
162
+ return `confidence: ${route.confidence}; matched: ${route.matchedKeywords.join(', ') || 'none'}`;
163
+ }
91
164
  function printRisk(risk) {
92
165
  const files = risk.files.length > 0 ? ` (${risk.files.join(', ')})` : '';
93
166
  console.log(`- [${risk.priority}] ${risk.title}${files}`);
@@ -1 +1 @@
1
- {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"start.js","sourceRoot":"","sources":["../../../src/cli/commands/start.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,8 @@ export async function analyzeDependencies(rootPath, options = {}) {
72
72
  const aggregateDeps = {};
73
73
  const aggregateDevDeps = {};
74
74
  const aggregateRisks = [];
75
+ const aggregateLicenseEntries = [];
76
+ const aggregateSizeEntries = [];
75
77
  for (const m of filtered) {
76
78
  const one = await analyzeOne(m.dir, m.isRoot ? undefined : m.name);
77
79
  if (!one)
@@ -82,6 +84,10 @@ export async function analyzeDependencies(rootPath, options = {}) {
82
84
  Object.assign(aggregateDevDeps, one.devDependencies);
83
85
  for (const r of one.risks)
84
86
  aggregateRisks.push(r);
87
+ if (one.licenses)
88
+ aggregateLicenseEntries.push(...one.licenses.packages);
89
+ if (one.sizes)
90
+ aggregateSizeEntries.push(...one.sizes.packages);
85
91
  byWorkspace.push({
86
92
  workspace: m.name,
87
93
  relativePath: m.relativePath,
@@ -101,12 +107,16 @@ export async function analyzeDependencies(rootPath, options = {}) {
101
107
  severity: 'medium',
102
108
  });
103
109
  }
110
+ const licenses = summarizeLicenses(aggregateLicenseEntries);
111
+ const sizes = summarizeSizes(aggregateSizeEntries);
104
112
  return {
105
113
  totalDependencies: totalDeps,
106
114
  totalDevDependencies: totalDevDeps,
107
115
  dependencies: aggregateDeps,
108
116
  devDependencies: aggregateDevDeps,
109
117
  risks: aggregateRisks,
118
+ licenses,
119
+ sizes,
110
120
  byWorkspace,
111
121
  };
112
122
  }
@@ -129,6 +139,8 @@ async function analyzeOne(manifestDir, workspaceName) {
129
139
  const dependencies = pkg.dependencies ?? {};
130
140
  const devDependencies = pkg.devDependencies ?? {};
131
141
  const risks = [];
142
+ const licenses = await collectLicenses(manifestDir, dependencies, devDependencies, workspaceName);
143
+ const sizes = await collectSizes(manifestDir, dependencies, devDependencies, workspaceName);
132
144
  // Deprecated packages
133
145
  for (const [name, reason] of Object.entries(DEPRECATED_PACKAGES)) {
134
146
  if (dependencies[name] || devDependencies[name]) {
@@ -169,14 +181,174 @@ async function analyzeOne(manifestDir, workspaceName) {
169
181
  });
170
182
  }
171
183
  }
184
+ for (const entry of licenses.copyleft) {
185
+ risks.push({
186
+ name: entry.name,
187
+ reason: `Copyleft license ${entry.license ?? 'UNKNOWN'} detected - review policy before merge or third-party notice generation`,
188
+ severity: 'high',
189
+ workspace: workspaceName,
190
+ });
191
+ }
172
192
  return {
173
193
  totalDependencies: totalDeps,
174
194
  totalDevDependencies: Object.keys(devDependencies).length,
175
195
  dependencies,
176
196
  devDependencies,
177
197
  risks,
198
+ licenses,
199
+ sizes,
178
200
  };
179
201
  }
202
+ async function collectLicenses(manifestDir, dependencies, devDependencies, workspaceName) {
203
+ const entries = [];
204
+ for (const [name, version] of Object.entries(dependencies)) {
205
+ entries.push(await licenseEntry(manifestDir, name, version, 'production', workspaceName));
206
+ }
207
+ for (const [name, version] of Object.entries(devDependencies)) {
208
+ entries.push(await licenseEntry(manifestDir, name, version, 'development', workspaceName));
209
+ }
210
+ return summarizeLicenses(entries);
211
+ }
212
+ async function collectSizes(manifestDir, dependencies, devDependencies, workspaceName) {
213
+ const entries = [];
214
+ for (const [name, version] of Object.entries(dependencies)) {
215
+ entries.push(await sizeEntry(manifestDir, name, version, 'production', workspaceName));
216
+ }
217
+ for (const [name, version] of Object.entries(devDependencies)) {
218
+ entries.push(await sizeEntry(manifestDir, name, version, 'development', workspaceName));
219
+ }
220
+ return summarizeSizes(entries);
221
+ }
222
+ async function licenseEntry(manifestDir, name, version, scope, workspaceName) {
223
+ const metadata = await readInstalledPackageMetadata(manifestDir, name);
224
+ const license = normalizeLicense(metadata?.license);
225
+ return {
226
+ name,
227
+ version,
228
+ scope,
229
+ license,
230
+ ...(workspaceName ? { workspace: workspaceName } : {}),
231
+ };
232
+ }
233
+ async function sizeEntry(manifestDir, name, version, scope, workspaceName) {
234
+ const bytes = await installedPackageSize(manifestDir, name);
235
+ return {
236
+ name,
237
+ version,
238
+ scope,
239
+ bytes,
240
+ formatted: bytes === null ? 'not installed' : formatBytes(bytes),
241
+ installed: bytes !== null,
242
+ ...(workspaceName ? { workspace: workspaceName } : {}),
243
+ };
244
+ }
245
+ async function readInstalledPackageMetadata(manifestDir, name) {
246
+ const packageJson = path.join(installedPackagePath(manifestDir, name), 'package.json');
247
+ try {
248
+ const raw = await fs.readFile(packageJson, 'utf-8');
249
+ return JSON.parse(raw);
250
+ }
251
+ catch {
252
+ return null;
253
+ }
254
+ }
255
+ async function installedPackageSize(manifestDir, name) {
256
+ const packageDir = installedPackagePath(manifestDir, name);
257
+ return directorySize(packageDir);
258
+ }
259
+ function installedPackagePath(manifestDir, name) {
260
+ return path.join(manifestDir, 'node_modules', ...name.split('/'));
261
+ }
262
+ async function directorySize(dir) {
263
+ let total = 0;
264
+ const stack = [dir];
265
+ try {
266
+ while (stack.length > 0) {
267
+ const current = stack.pop();
268
+ if (!current)
269
+ continue;
270
+ const entries = await fs.readdir(current, { withFileTypes: true });
271
+ for (const entry of entries) {
272
+ const fullPath = path.join(current, entry.name);
273
+ if (entry.isDirectory()) {
274
+ stack.push(fullPath);
275
+ continue;
276
+ }
277
+ const stat = await fs.lstat(fullPath);
278
+ total += stat.size;
279
+ }
280
+ }
281
+ return total;
282
+ }
283
+ catch {
284
+ return null;
285
+ }
286
+ }
287
+ function normalizeLicense(value) {
288
+ if (typeof value === 'string' && value.trim().length > 0)
289
+ return value.trim();
290
+ if (value && typeof value === 'object' && 'type' in value) {
291
+ const typed = value.type;
292
+ if (typeof typed === 'string' && typed.trim().length > 0)
293
+ return typed.trim();
294
+ }
295
+ return null;
296
+ }
297
+ function summarizeLicenses(entries) {
298
+ const byLicense = {};
299
+ const unknown = [];
300
+ const copyleft = [];
301
+ const noticeCandidates = [];
302
+ for (const entry of entries) {
303
+ const license = entry.license ?? 'UNKNOWN';
304
+ byLicense[license] = (byLicense[license] ?? 0) + 1;
305
+ if (entry.license === null) {
306
+ unknown.push(entry.name);
307
+ }
308
+ else {
309
+ noticeCandidates.push(entry);
310
+ if (isCopyleftLicense(entry.license))
311
+ copyleft.push(entry);
312
+ }
313
+ }
314
+ return {
315
+ packages: entries.sort((a, b) => a.name.localeCompare(b.name)),
316
+ byLicense: Object.fromEntries(Object.entries(byLicense).sort(([a], [b]) => a.localeCompare(b))),
317
+ unknown: unknown.sort((a, b) => a.localeCompare(b)),
318
+ copyleft: copyleft.sort((a, b) => a.name.localeCompare(b.name)),
319
+ noticeCandidates: noticeCandidates.sort((a, b) => a.name.localeCompare(b.name)),
320
+ };
321
+ }
322
+ function summarizeSizes(entries) {
323
+ const installed = entries.filter((entry) => entry.bytes !== null);
324
+ const totalBytes = installed.reduce((sum, entry) => sum + (entry.bytes ?? 0), 0);
325
+ const packages = [...entries].sort((a, b) => a.name.localeCompare(b.name));
326
+ const largest = [...installed]
327
+ .sort((a, b) => (b.bytes ?? 0) - (a.bytes ?? 0) || a.name.localeCompare(b.name))
328
+ .slice(0, 10);
329
+ return {
330
+ packages,
331
+ largest,
332
+ totalBytes,
333
+ formattedTotal: formatBytes(totalBytes),
334
+ missing: entries.filter((entry) => !entry.installed).map((entry) => entry.name).sort((a, b) => a.localeCompare(b)),
335
+ };
336
+ }
337
+ function formatBytes(bytes) {
338
+ if (bytes < 1024)
339
+ return `${bytes} B`;
340
+ const units = ['KB', 'MB', 'GB'];
341
+ let value = bytes / 1024;
342
+ for (let index = 0; index < units.length; index += 1) {
343
+ if (value < 1024 || index === units.length - 1)
344
+ return `${value.toFixed(1)} ${units[index]}`;
345
+ value /= 1024;
346
+ }
347
+ return `${bytes} B`;
348
+ }
349
+ function isCopyleftLicense(license) {
350
+ return /\b(?:AGPL|GPL|LGPL|SSPL)\b/i.test(license);
351
+ }
180
352
  async function checkLockfile(rootPath) {
181
353
  const lockfiles = ['package-lock.json', 'yarn.lock', 'pnpm-lock.yaml'];
182
354
  for (const lockfile of lockfiles) {
@@ -1 +1 @@
1
- {"version":3,"file":"dependencyAnalyzer.js","sourceRoot":"","sources":["../../src/core/dependencyAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dependencyAnalyzer.js","sourceRoot":"","sources":["../../src/core/dependencyAnalyzer.ts"],"names":[],"mappings":"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"}
@@ -26,10 +26,17 @@ export interface RouteEntry {
26
26
  /** Terms that signal this intent. */
27
27
  keywords: string[];
28
28
  }
29
+ export type RouteConfidence = 'high' | 'medium' | 'low';
30
+ export interface RouteMatch extends RouteEntry {
31
+ score: number;
32
+ rank: number;
33
+ confidence: RouteConfidence;
34
+ matchedKeywords: string[];
35
+ }
29
36
  export interface RouteResult {
30
37
  intent: string | null;
31
38
  matched: boolean;
32
- matches: RouteEntry[];
39
+ matches: RouteMatch[];
33
40
  }
34
41
  export declare const ROUTE_CATALOG: RouteEntry[];
35
42
  /**