phpstan-mcp-mx 0.22.0 → 0.24.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 (87) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +142 -19
  3. package/dist/baseline.d.ts +10 -0
  4. package/dist/baseline.js +36 -14
  5. package/dist/baseline.js.map +1 -1
  6. package/dist/changed.d.ts +17 -0
  7. package/dist/changed.js +56 -29
  8. package/dist/changed.js.map +1 -1
  9. package/dist/compare.js +12 -6
  10. package/dist/compare.js.map +1 -1
  11. package/dist/composer.js +43 -21
  12. package/dist/composer.js.map +1 -1
  13. package/dist/config.js +12 -6
  14. package/dist/config.js.map +1 -1
  15. package/dist/defaults.js +2 -1
  16. package/dist/defaults.js.map +1 -1
  17. package/dist/dumptype.js +16 -8
  18. package/dist/dumptype.js.map +1 -1
  19. package/dist/failure.d.ts +1 -1
  20. package/dist/failure.js.map +1 -1
  21. package/dist/history.d.ts +61 -0
  22. package/dist/history.js +275 -0
  23. package/dist/history.js.map +1 -0
  24. package/dist/index.js +6 -3
  25. package/dist/index.js.map +1 -1
  26. package/dist/php.js +10 -5
  27. package/dist/php.js.map +1 -1
  28. package/dist/phpstan/error.js.map +1 -1
  29. package/dist/phpstan/output.js +12 -6
  30. package/dist/phpstan/output.js.map +1 -1
  31. package/dist/phpstan/parameters.js.map +1 -1
  32. package/dist/phpstan/process.d.ts +10 -0
  33. package/dist/phpstan/process.js +35 -9
  34. package/dist/phpstan/process.js.map +1 -1
  35. package/dist/phpstan/queue.js +4 -2
  36. package/dist/phpstan/queue.js.map +1 -1
  37. package/dist/phpstan.d.ts +14 -0
  38. package/dist/phpstan.js +94 -25
  39. package/dist/phpstan.js.map +1 -1
  40. package/dist/project.d.ts +6 -2
  41. package/dist/project.js +57 -18
  42. package/dist/project.js.map +1 -1
  43. package/dist/prune.d.ts +92 -0
  44. package/dist/prune.js +387 -0
  45. package/dist/prune.js.map +1 -0
  46. package/dist/report.js +38 -19
  47. package/dist/report.js.map +1 -1
  48. package/dist/root-source.d.ts +43 -0
  49. package/dist/root-source.js +124 -0
  50. package/dist/root-source.js.map +1 -0
  51. package/dist/roots.d.ts +12 -0
  52. package/dist/roots.js +23 -6
  53. package/dist/roots.js.map +1 -1
  54. package/dist/runner.js +14 -7
  55. package/dist/runner.js.map +1 -1
  56. package/dist/runs.js +6 -3
  57. package/dist/runs.js.map +1 -1
  58. package/dist/schema-dialect.js +6 -3
  59. package/dist/schema-dialect.js.map +1 -1
  60. package/dist/server.d.ts +3 -2
  61. package/dist/server.js +9 -5
  62. package/dist/server.js.map +1 -1
  63. package/dist/tmpdir.js +6 -3
  64. package/dist/tmpdir.js.map +1 -1
  65. package/dist/tools/analysis.d.ts +4 -4
  66. package/dist/tools/analysis.js +4 -2
  67. package/dist/tools/analysis.js.map +1 -1
  68. package/dist/tools/inspect.d.ts +9 -7
  69. package/dist/tools/inspect.js +158 -37
  70. package/dist/tools/inspect.js.map +1 -1
  71. package/dist/tools/prompts.d.ts +3 -3
  72. package/dist/tools/prompts.js +16 -8
  73. package/dist/tools/prompts.js.map +1 -1
  74. package/dist/tools/shared.d.ts +2 -2
  75. package/dist/tools/shared.js +7 -5
  76. package/dist/tools/shared.js.map +1 -1
  77. package/dist/tools/writes.d.ts +8 -3
  78. package/dist/tools/writes.js +73 -3
  79. package/dist/tools/writes.js.map +1 -1
  80. package/dist/tools.d.ts +2 -2
  81. package/dist/tools.js +6 -3
  82. package/dist/tools.js.map +1 -1
  83. package/dist/unmatched.d.ts +66 -0
  84. package/dist/unmatched.js +194 -44
  85. package/dist/unmatched.js.map +1 -1
  86. package/dist/version.js.map +1 -1
  87. package/package.json +1 -1
@@ -208,8 +208,9 @@ function describeHidden(changed, baselines) {
208
208
  function describeNothingChanged(changed) {
209
209
  const wat = changed.staged ? 'staged' : 'changed';
210
210
  const lines = [`No ${wat} PHP files relative to ${changed.base}.`];
211
- if (changed.skipped.length > 0)
211
+ if (changed.skipped.length > 0) {
212
212
  lines.push('', ...skippedLines(changed));
213
+ }
213
214
  return lines.join('\n');
214
215
  }
215
216
  /** Wat er geanalyseerd is, zodat zichtbaar is waarop het rapport eronder betrekking heeft. */
@@ -222,8 +223,9 @@ function describeChanged(resolved, changed, heleProject = false) {
222
223
  if (heleProject) {
223
224
  lines.push('', "Analysed: everything the config's paths cover, so findings in files you did not change are included.");
224
225
  }
225
- if (changed.skipped.length > 0)
226
+ if (changed.skipped.length > 0) {
226
227
  lines.push('', ...skippedLines(changed));
228
+ }
227
229
  return lines.join('\n');
228
230
  }
229
231
  function skippedLines(changed) {
@@ -1 +1 @@
1
- {"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../src/tools/analysis.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../src/tools/analysis.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,20 @@
1
1
  import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
- import type { Root } from '../roots.js';
2
+ import type { RootSource } from '../root-source.js';
3
3
  /** Hangt `list_projects` aan de server: welke projecten binnen bereik liggen. */
4
- export declare function registerListProjects(server: McpServer, roots: Root[]): void;
4
+ export declare function registerListProjects(server: McpServer, roots: RootSource): void;
5
5
  /**
6
6
  * Eén prompt met het werkpatroon. Er zijn zes tools waarvan drie op elkaar lijken;
7
7
  * zonder dit moet het model de juiste volgorde uit de losse beschrijvingen
8
8
  * reconstrueren, en dan is `analyse_project` op een groot project de eerste gok.
9
9
  */
10
- export declare function registerServerConfig(server: McpServer, roots: Root[]): void;
10
+ export declare function registerServerConfig(server: McpServer, roots: RootSource): void;
11
11
  /** Hangt `diagnose_project` aan de server: PHPStans eigen opstelling in een project. */
12
- export declare function registerDiagnose(server: McpServer, roots: Root[]): void;
12
+ export declare function registerDiagnose(server: McpServer, roots: RootSource): void;
13
13
  /** Hangt `baseline_summary` aan de server: wat de baseline verbergt. */
14
- export declare function registerBaselineSummary(server: McpServer, roots: Root[]): void;
14
+ export declare function registerBaselineSummary(server: McpServer, roots: RootSource): void;
15
+ /** Hangt `baseline_history` aan de server: hoe de baseline door de git-geschiedenis veranderde. */
16
+ export declare function registerBaselineHistory(server: McpServer, roots: RootSource): void;
15
17
  /** Hangt `unmatched_ignores` aan de server: negeerregels die niets meer doen. */
16
- export declare function registerUnmatchedIgnores(server: McpServer, roots: Root[]): void;
18
+ export declare function registerUnmatchedIgnores(server: McpServer, roots: RootSource): void;
17
19
  /** Hangt `inspect_type` aan de server: het type dat PHPStan op een regel afleidt. */
18
- export declare function registerInspectType(server: McpServer, roots: Root[]): void;
20
+ export declare function registerInspectType(server: McpServer, roots: RootSource): void;
@@ -1,10 +1,11 @@
1
1
  import { z } from 'zod';
2
2
  import { baselineEntriesFor, renderBaseline, summariseBaseline } from '../baseline.js';
3
3
  import { GitError, countInlineIgnores } from '../changed.js';
4
+ import { DEFAULT_HISTORY_LIMIT, MAX_HISTORY_LIMIT, baselineHistory, renderHistory } from '../history.js';
4
5
  import { diagnose, loadDefaultMemoryLimit, loadMaxParallel, serverInvocation } from '../phpstan.js';
5
6
  import { findMissingExtensions, readComposerScripts, renderComposerScripts, renderMissingExtensions } from '../composer.js';
6
- import { discoverProjects, resolveProject } from '../project.js';
7
- import { ROOTS_ENV_VAR } from '../roots.js';
7
+ import { discoverProjects } from '../project.js';
8
+ import { ROOTS_ENV_VAR, soleRoot } from '../roots.js';
8
9
  import { PROJECTS_ENV_VAR, loadProjectDefaults } from '../defaults.js';
9
10
  import { PHP_ENV_VAR, hostPhp } from '../php.js';
10
11
  import { loadRunners } from '../runner.js';
@@ -39,21 +40,27 @@ export function registerListProjects(server, roots) {
39
40
  })).describe('Defaults the server sets for this project; a tool argument takes precedence'),
40
41
  })),
41
42
  problems: z.array(z.object({ root: z.string(), problem: z.string() })),
43
+ rootsFrom: z
44
+ .enum(['config', 'client'])
45
+ .describe(`Where the directories come from: ${ROOTS_ENV_VAR}, or the directories the client shares (MCP roots)`),
46
+ workingDirectory: nullable(z.string()).describe('What a relative `project` such as "." resolves against, or null if nothing'),
42
47
  },
43
48
  annotations: readOnly(),
44
- }, () => {
49
+ }, async () => {
50
+ const scope = await roots.current();
45
51
  // Met de reden erbij: zonder viel dit terug op `phpstan_failed`, terwijl
46
52
  // PHPStan hier niet eens gestart is. Juist bij deze tool het beginpunt moet
47
53
  // een aanroeper kunnen zien dat het aan de serverconfiguratie ligt.
48
- if (roots.length === 0) {
49
- return failure(`No project directories are configured. Set ${ROOTS_ENV_VAR} in the ` +
50
- 'MCP server configuration to the absolute paths that may be analysed, ' +
51
- 'separated by colons.', 'no_roots_configured', { hint: `Set ${ROOTS_ENV_VAR}, or "roots" in the config file.` });
54
+ if (scope.allowed.length === 0) {
55
+ return failure(`No project directories are configured, and the client shares none: ${scope.clientProblem ?? 'its list of roots is empty'}. ` +
56
+ `Set ${ROOTS_ENV_VAR} in the MCP server configuration to the absolute paths that may be analysed, separated by colons.`, 'no_roots_configured', { hint: `Set ${ROOTS_ENV_VAR}, or "roots" in the config file.` });
52
57
  }
53
- const projects = discoverProjects(roots);
54
- const problems = roots
58
+ const projects = discoverProjects(scope.allowed);
59
+ const problems = scope.allowed
55
60
  .filter((root) => root.problem !== null)
56
61
  .map((root) => ({ root: root.raw, problem: root.problem }));
62
+ const workingDirectory = soleRoot(scope.client);
63
+ const rootsFrom = scope.origin;
57
64
  // Kapotte standaarden laten de lijst heel (describeProject valt dan terug op
58
65
  // wat er ligt), maar horen hier wel te staan: anders lijkt het alsof ze gelden.
59
66
  try {
@@ -63,13 +70,25 @@ export function registerListProjects(server, roots) {
63
70
  problems.push({ root: PROJECTS_ENV_VAR, problem: error instanceof Error ? error.message : String(error) });
64
71
  }
65
72
  return {
66
- content: [{ type: 'text', text: renderProjects(projects, problems) }],
67
- structuredContent: { projects, problems },
73
+ content: [{ type: 'text', text: renderProjects({ projects, problems, rootsFrom, workingDirectory }) }],
74
+ structuredContent: { projects, problems, rootsFrom, workingDirectory },
68
75
  };
69
76
  });
70
77
  }
71
- function renderProjects(projects, problems) {
78
+ function renderProjects(listing) {
79
+ const { projects, problems } = listing;
72
80
  const lines = [];
81
+ // Wie de lijst leest, moet kunnen zien waarom juist deze mappen: zonder PHPSTAN_MCP_ROOTS is
82
+ // het de map van de sessie, en dat verklaart waarom een ander project hier ontbreekt.
83
+ if (listing.rootsFrom === 'client') {
84
+ lines.push(`Directories shared by the client (MCP roots), because ${ROOTS_ENV_VAR} is not set.`);
85
+ }
86
+ if (listing.workingDirectory !== null) {
87
+ lines.push(`"." as project means ${listing.workingDirectory}; other relative paths start there too.`);
88
+ }
89
+ if (lines.length > 0) {
90
+ lines.push('');
91
+ }
73
92
  if (projects.length === 0) {
74
93
  lines.push('No PHP projects found under the configured directories.');
75
94
  }
@@ -86,20 +105,24 @@ function renderProjects(projects, problems) {
86
105
  }
87
106
  if (problems.length > 0) {
88
107
  lines.push('', 'Skipped entries from the configuration:');
89
- for (const problem of problems)
108
+ for (const problem of problems) {
90
109
  lines.push(`- ${problem.root}: ${problem.problem}`);
110
+ }
91
111
  }
92
112
  return lines.join('\n');
93
113
  }
94
114
  /** "memory 2G, timeout 600s" alleen wat gezet is, in een vaste volgorde. */
95
115
  function describeDefaults(defaults) {
96
116
  const delen = [];
97
- if (defaults.memoryLimit !== null)
117
+ if (defaults.memoryLimit !== null) {
98
118
  delen.push(`memory ${defaults.memoryLimit}`);
99
- if (defaults.timeoutSeconds !== null)
119
+ }
120
+ if (defaults.timeoutSeconds !== null) {
100
121
  delen.push(`timeout ${String(defaults.timeoutSeconds)}s`);
101
- if (defaults.config !== null)
122
+ }
123
+ if (defaults.config !== null) {
102
124
  delen.push(`config ${defaults.config}`);
125
+ }
103
126
  return delen.join(', ');
104
127
  }
105
128
  /**
@@ -123,6 +146,17 @@ export function registerServerConfig(server, roots) {
123
146
  path: nullable(z.string()).describe('The resolved path, or null if the root is unusable'),
124
147
  problem: nullable(z.string()),
125
148
  })),
149
+ rootsFrom: z
150
+ .enum(['config', 'client'])
151
+ .describe(`Which directories are in scope: those from ${ROOTS_ENV_VAR}, or, when it is not set, those the client shares`),
152
+ clientRoots: z
153
+ .array(z.object({
154
+ raw: z.string().describe('The URI the client sent'),
155
+ path: nullable(z.string()).describe('The resolved path, or null if it is unusable'),
156
+ problem: nullable(z.string()),
157
+ }))
158
+ .describe('Directories the client shares (MCP roots); a relative `project` resolves against the only one'),
159
+ clientRootsProblem: nullable(z.string()).describe('Why the client shares no directories, or null'),
126
160
  memoryLimit: nullable(z.string()).describe('Default --memory-limit, or null if it is not set'),
127
161
  maxParallel: nullable(z.number()).describe('How many analyses may run in parallel; null if the value was rejected'),
128
162
  tmpDir: nullable(z.string()).describe('"project" of "shared"'),
@@ -143,14 +177,19 @@ export function registerServerConfig(server, roots) {
143
177
  .describe('Settings that were rejected; those fields are then null'),
144
178
  },
145
179
  annotations: readOnly(),
146
- }, () => {
180
+ }, async () => {
181
+ const scope = await roots.current();
182
+ const describe = (root) => ({ raw: root.raw, path: root.path, problem: root.problem });
147
183
  // Elke waarde apart uitlezen: de loaders weigeren een onbruikbare waarde met
148
184
  // een uitleg, en juist die uitleg is hier het antwoord. Eén mislukte
149
185
  // instelling mag de rest niet onzichtbaar maken.
150
186
  const problems = [];
151
187
  const config = {
152
188
  version: VERSION,
153
- roots: roots.map((root) => ({ raw: root.raw, path: root.path, problem: root.problem })),
189
+ roots: scope.origin === 'config' ? scope.allowed.map(describe) : [],
190
+ rootsFrom: scope.origin,
191
+ clientRoots: scope.client.map(describe),
192
+ clientRootsProblem: scope.clientProblem,
154
193
  memoryLimit: setting(() => loadDefaultMemoryLimit() ?? null, problems),
155
194
  maxParallel: setting(() => loadMaxParallel(), problems),
156
195
  tmpDir: setting(() => loadTmpDirMode(), problems),
@@ -186,25 +225,33 @@ function setting(read, problems) {
186
225
  }
187
226
  }
188
227
  function renderConfig(config) {
189
- const lines = [`phpstan-mcp ${config.version}`, '', 'Project directories:'];
228
+ const lines = [`phpstan-mcp ${config.version}`, '', `Project directories (${ROOTS_ENV_VAR}):`];
229
+ const show = (root) => ` ${root.path ?? root.raw}${root.problem === null ? '' : ` ${root.problem}`}`;
190
230
  if (config.roots.length === 0) {
191
- lines.push(` (none; set ${ROOTS_ENV_VAR})`);
231
+ lines.push(` (not set; the directories the client shares are in scope instead)`);
192
232
  }
193
233
  else {
194
- for (const root of config.roots) {
195
- lines.push(` ${root.path ?? root.raw}${root.problem === null ? '' : ` ${root.problem}`}`);
196
- }
234
+ lines.push(...config.roots.map(show));
235
+ }
236
+ lines.push('', `Shared by the client (MCP roots)${config.rootsFrom === 'config' ? `, for relative paths; ${ROOTS_ENV_VAR} limits the scope` : ''}:`);
237
+ if (config.clientRoots.length === 0) {
238
+ lines.push(` (none: ${config.clientRootsProblem ?? 'the client sent an empty list'})`);
239
+ }
240
+ else {
241
+ lines.push(...config.clientRoots.map(show));
197
242
  }
198
243
  lines.push('', `Memory limit: ${config.memoryLimit ?? "not set (PHP's own limit applies)"}`, `Parallel: ${config.maxParallel === null ? 'unknown' : String(config.maxParallel)}`, `Temp directory: ${config.tmpDir === null ? 'unknown' : config.tmpDir}`, `Writing tools: ${config.writesAllowed ? 'on (generate_baseline exists)' : 'off'}`, `PHP: ${config.php ?? describeMissingPhp()}`, `Runners: ${config.runners.length === 0 ? 'none' : config.runners.join(', ')}`);
199
244
  if (config.projectDefaults.length > 0) {
200
245
  lines.push('', 'Per-project defaults (a tool argument takes precedence):');
201
- for (const entry of config.projectDefaults)
246
+ for (const entry of config.projectDefaults) {
202
247
  lines.push(` ${entry.project}: ${describeDefaults(entry)}`);
248
+ }
203
249
  }
204
250
  if (config.problems.length > 0) {
205
251
  lines.push('', 'Rejected settings:');
206
- for (const problem of config.problems)
252
+ for (const problem of config.problems) {
207
253
  lines.push(`- ${problem}`);
254
+ }
208
255
  }
209
256
  return lines.join('\n');
210
257
  }
@@ -272,7 +319,7 @@ export function registerDiagnose(server, roots) {
272
319
  }, async (args, extra) => {
273
320
  const begin = Date.now();
274
321
  try {
275
- const resolved = resolveProject(args.project, roots);
322
+ const resolved = await roots.resolveProject(args.project);
276
323
  log(server, 'debug', { event: 'diagnosis started', project: resolved.path });
277
324
  const diagnosis = await diagnose(resolved, {
278
325
  ...(args.timeoutSeconds === undefined ? {} : { timeoutMs: args.timeoutSeconds * 1000 }),
@@ -350,13 +397,14 @@ export function registerBaselineSummary(server, roots) {
350
397
  annotations: readOnly(),
351
398
  }, async ({ project, path }) => {
352
399
  try {
353
- const resolved = resolveProject(project, roots);
400
+ const resolved = await roots.resolveProject(project);
354
401
  const summary = summariseBaseline(resolved);
355
402
  const entries = path === undefined || path === '' ? null : baselineEntriesFor(resolved, path);
356
403
  const inline = await inlineIgnoresOf(resolved);
357
404
  const delen = [renderBaseline(summary), renderInlineIgnores(inline)];
358
- if (entries !== null)
405
+ if (entries !== null) {
359
406
  delen.push(renderEntries(path ?? '', entries));
407
+ }
360
408
  return {
361
409
  content: [{ type: 'text', text: delen.join('\n\n') }],
362
410
  structuredContent: { ...summary, entries, ...inline },
@@ -377,8 +425,9 @@ async function inlineIgnoresOf(project) {
377
425
  return { inlineIgnores: await countInlineIgnores(project), inlineIgnoresProblem: null };
378
426
  }
379
427
  catch (error) {
380
- if (!(error instanceof GitError))
428
+ if (!(error instanceof GitError)) {
381
429
  throw error;
430
+ }
382
431
  // Een eigen zin en niet error.message: die is geschreven voor analyse_changed, en raadt
383
432
  // "analyse_project met paden" aan dat telt geen inline ignores.
384
433
  const waarom = error.reason === 'not_a_git_repository'
@@ -391,13 +440,16 @@ async function inlineIgnoresOf(project) {
391
440
  }
392
441
  /** De inline ignores als tekst, onder de baseline. */
393
442
  function renderInlineIgnores({ inlineIgnores: inline, inlineIgnoresProblem: problem, }) {
394
- if (inline === null)
443
+ if (inline === null) {
395
444
  return `Inline @phpstan-ignore comments were not counted: ${problem ?? 'unknown reason'}`;
396
- if (inline.total === 0)
445
+ }
446
+ if (inline.total === 0) {
397
447
  return 'No inline @phpstan-ignore comments in the code.';
448
+ }
398
449
  const lines = [
399
450
  `${String(inline.total)} inline @phpstan-ignore comment(s) in ${String(inline.files)} file(s) counted in all PHP ` +
400
- 'files git knows, also outside the analysed paths. These are hidden too, and a new baseline does not touch them.',
451
+ 'files git knows, also outside the analysed paths. These are hidden too, and a new baseline does not touch them. ' +
452
+ 'unmatched_ignores says which of them no longer suppress anything.',
401
453
  ];
402
454
  if (inline.withoutIdentifier > 0) {
403
455
  lines.push(`${String(inline.withoutIdentifier)} have no identifier (@phpstan-ignore-line, -next-line): they ignore every error on their line.`);
@@ -415,21 +467,80 @@ function renderInlineIgnores({ inlineIgnores: inline, inlineIgnoresProblem: prob
415
467
  const MAX_PATTERN_CHARS = 200;
416
468
  /** De baseline-regels voor één bestand, als tekst. */
417
469
  function renderEntries(path, entries) {
418
- if (entries.length === 0)
470
+ if (entries.length === 0) {
419
471
  return `No baseline entries for ${path}.`;
472
+ }
420
473
  const kort = (message) => message === null ? '' : message.length <= MAX_PATTERN_CHARS ? ` ${message}` : ` ${message.slice(0, MAX_PATTERN_CHARS)}…`;
421
474
  return [
422
475
  `${String(entries.length)} baseline entr${entries.length === 1 ? 'y' : 'ies'} for ${path}:`,
423
476
  ...entries.map((entry) => ` ${String(entry.count).padStart(3)} ${entry.identifier}${kort(entry.message)}`),
424
477
  ].join('\n');
425
478
  }
479
+ /** Hangt `baseline_history` aan de server: hoe de baseline door de git-geschiedenis veranderde. */
480
+ export function registerBaselineHistory(server, roots) {
481
+ const count = z.object({ entries: z.number(), errors: z.number().describe('Ignored errors; one entry can cover several') });
482
+ server.registerTool('baseline_history', {
483
+ title: 'Baseline history',
484
+ description: 'Shows how the included phpstan-baseline*.neon changed through the git history: per commit that touched ' +
485
+ 'it, the number of ignored errors, the change against the previous version, and which identifiers grew or ' +
486
+ 'shrank most. Answers whether a baseline is being paid off or is quietly growing, and which commit added a ' +
487
+ 'pile. Follows the first-parent line of HEAD, so a merged branch is one change. Reads git only; does not ' +
488
+ 'run PHPStan.',
489
+ inputSchema: {
490
+ project: projectArgument,
491
+ limit: z
492
+ .number()
493
+ .int()
494
+ .min(1)
495
+ .max(MAX_HISTORY_LIMIT)
496
+ .optional()
497
+ .describe(`How many changes per baseline file (default ${String(DEFAULT_HISTORY_LIMIT)})`),
498
+ },
499
+ outputSchema: {
500
+ project: z.string(),
501
+ files: z.array(z.object({
502
+ file: z.string(),
503
+ rows: z
504
+ .array(z.object({
505
+ commit: nullable(z.string()).describe('Null for the working copy, when it differs from the last commit'),
506
+ date: nullable(z.string()).describe('Commit date, ISO 8601'),
507
+ subject: nullable(z.string()),
508
+ file: z.string().describe('The name of the baseline in that commit; differs when it was renamed later'),
509
+ count: nullable(count).describe('Null if the baseline could not be read in that commit'),
510
+ delta: nullable(count).describe('Against the row below; null if either could not be read'),
511
+ changes: z
512
+ .array(z.object({ identifier: z.string(), change: z.number() }))
513
+ .describe('The identifiers that changed most, in ignored errors; positive means added'),
514
+ }))
515
+ .describe('Newest first'),
516
+ start: nullable(count).describe('The baseline before the oldest row; zero when it was created there'),
517
+ olderCommits: z.boolean().describe('Whether older commits changed it too; a higher limit shows them'),
518
+ })),
519
+ notices: z.array(z.string()),
520
+ },
521
+ annotations: readOnly(),
522
+ }, async ({ project, limit }) => {
523
+ try {
524
+ const resolved = await roots.resolveProject(project);
525
+ const history = await baselineHistory(resolved, limit);
526
+ return {
527
+ content: [{ type: 'text', text: renderHistory(history) }],
528
+ structuredContent: { ...history },
529
+ };
530
+ }
531
+ catch (error) {
532
+ return toFailure(error);
533
+ }
534
+ });
535
+ }
426
536
  /** Hangt `unmatched_ignores` aan de server: negeerregels die niets meer doen. */
427
537
  export function registerUnmatchedIgnores(server, roots) {
428
538
  server.registerTool('unmatched_ignores', {
429
539
  title: 'Find stale ignore rules',
430
540
  description: 'Runs a full analysis with reportUnmatchedIgnoredErrors enabled and returns the ' +
431
541
  'ignore rules that no longer match anything, or match less often than their count ' +
432
- 'from the baseline and from ignoreErrors in the config. Such a rule belongs to an ' +
542
+ 'from the baseline and from ignoreErrors in the config, plus the inline @phpstan-ignore ' +
543
+ 'comments that no longer suppress anything. Such a rule belongs to an ' +
433
544
  'error that has been fixed and can be removed. Does not change anything in the ' +
434
545
  'project: the temporary config lives outside it for a project with a runner, in ' +
435
546
  "that runner's temp directory.",
@@ -457,6 +568,8 @@ export function registerUnmatchedIgnores(server, roots) {
457
568
  countTooHigh: z.number(),
458
569
  inBaseline: z.number(),
459
570
  general: z.number(),
571
+ inline: z.number().describe('Inline @phpstan-ignore comments in the code that no longer suppress anything'),
572
+ inlineWithoutIdentifier: z.number().describe('How many of those name no identifier: they ignore every error on their line'),
460
573
  otherFindings: z
461
574
  .number()
462
575
  .describe('Regular findings from the same run; a new baseline would hide those too'),
@@ -474,12 +587,19 @@ export function registerUnmatchedIgnores(server, roots) {
474
587
  general: z
475
588
  .array(z.string())
476
589
  .describe('Patterns without a path that no longer match anything; these are not in the baseline'),
590
+ inline: z
591
+ .array(z.object({
592
+ path: z.string().describe('Path relative to the project root'),
593
+ line: nullable(z.number()).describe('The line the ignore applies to; for a comment on a line of its own, the line below it'),
594
+ identifier: nullable(z.string()).describe('The identifier that no longer occurs there; null for an ignore without identifier'),
595
+ }))
596
+ .describe('Inline @phpstan-ignore comments that no longer suppress anything; these are in the code, not in a baseline'),
477
597
  generalErrors: z.array(z.string()),
478
598
  warnings: z
479
599
  .array(z.string())
480
600
  .describe('If this contains "Result is incomplete", PHPStan may have missed stale rules'),
481
601
  notices: z.array(z.string()),
482
- omitted: z.object({ general: z.number(), generalErrors: z.number(), warnings: z.number() }),
602
+ omitted: z.object({ general: z.number(), inline: z.number(), generalErrors: z.number(), warnings: z.number() }),
483
603
  page: z.object({
484
604
  offset: z.number(),
485
605
  limit: z.number(),
@@ -492,7 +612,7 @@ export function registerUnmatchedIgnores(server, roots) {
492
612
  }, async (args, extra) => {
493
613
  const begin = Date.now();
494
614
  try {
495
- const resolved = resolveProject(args.project, roots);
615
+ const resolved = await roots.resolveProject(args.project);
496
616
  log(server, 'debug', { event: 'checking ignore rules', project: resolved.path });
497
617
  const report = await findUnmatchedIgnores(resolved, {
498
618
  ...(args.memoryLimit === undefined ? {} : { memoryLimit: args.memoryLimit }),
@@ -504,6 +624,7 @@ export function registerUnmatchedIgnores(server, roots) {
504
624
  project: resolved.path,
505
625
  stale: report.totals.unmatched + report.totals.countTooHigh,
506
626
  general: report.totals.general,
627
+ inline: report.totals.inline,
507
628
  durationMs: Date.now() - begin,
508
629
  });
509
630
  return {
@@ -570,7 +691,7 @@ export function registerInspectType(server, roots) {
570
691
  }, async (args, extra) => {
571
692
  const begin = Date.now();
572
693
  try {
573
- const resolved = resolveProject(args.project, roots);
694
+ const resolved = await roots.resolveProject(args.project);
574
695
  log(server, 'debug', { event: 'type inspection started', project: resolved.path });
575
696
  const report = await inspectType(resolved, { path: args.path, line: args.line, expressions: args.expressions }, { ...common(resolved, args), signal: extra.signal });
576
697
  log(server, 'info', {
@@ -1 +1 @@
1
- {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/tools/inspect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inspect.js","sourceRoot":"","sources":["../../src/tools/inspect.ts"],"names":[],"mappings":"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"}