phpstan-mcp-mx 0.12.0 → 0.14.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.
- package/CHANGELOG.md +22 -0
- package/README.md +113 -6
- package/dist/baseline.d.ts +19 -0
- package/dist/baseline.js +44 -11
- package/dist/baseline.js.map +1 -1
- package/dist/changed.d.ts +22 -0
- package/dist/changed.js +93 -9
- package/dist/changed.js.map +1 -1
- package/dist/config.d.ts +3 -2
- package/dist/config.js.map +1 -1
- package/dist/defaults.d.ts +37 -0
- package/dist/defaults.js +100 -0
- package/dist/defaults.js.map +1 -0
- package/dist/failure.d.ts +1 -1
- package/dist/failure.js.map +1 -1
- package/dist/index.js +17 -1
- package/dist/index.js.map +1 -1
- package/dist/phpstan.js +58 -19
- package/dist/phpstan.js.map +1 -1
- package/dist/project.d.ts +10 -1
- package/dist/project.js +28 -1
- package/dist/project.js.map +1 -1
- package/dist/report.d.ts +39 -3
- package/dist/report.js +59 -14
- package/dist/report.js.map +1 -1
- package/dist/runs.d.ts +59 -0
- package/dist/runs.js +78 -0
- package/dist/runs.js.map +1 -0
- package/dist/schema-dialect.d.ts +30 -0
- package/dist/schema-dialect.js +57 -0
- package/dist/schema-dialect.js.map +1 -0
- package/dist/server.js +5 -0
- package/dist/server.js.map +1 -1
- package/dist/tmpdir.js.map +1 -1
- package/dist/tools/analysis.d.ts +4 -3
- package/dist/tools/analysis.js +35 -8
- package/dist/tools/analysis.js.map +1 -1
- package/dist/tools/inspect.d.ts +2 -0
- package/dist/tools/inspect.js +140 -1
- package/dist/tools/inspect.js.map +1 -1
- package/dist/tools/prompts.d.ts +8 -1
- package/dist/tools/prompts.js +85 -4
- package/dist/tools/prompts.js.map +1 -1
- package/dist/tools/shared.d.ts +26 -2
- package/dist/tools/shared.js +63 -5
- package/dist/tools/shared.js.map +1 -1
- package/dist/tools.js +9 -4
- package/dist/tools.js.map +1 -1
- package/dist/unmatched.d.ts +91 -0
- package/dist/unmatched.js +309 -0
- package/dist/unmatched.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +2 -1
package/dist/tools/inspect.js
CHANGED
|
@@ -3,8 +3,11 @@ import { renderBaseline, summariseBaseline } from '../baseline.js';
|
|
|
3
3
|
import { diagnose, loadDefaultMemoryLimit, loadMaxParallel } from '../phpstan.js';
|
|
4
4
|
import { discoverProjects, resolveProject } from '../project.js';
|
|
5
5
|
import { ROOTS_ENV_VAR } from '../roots.js';
|
|
6
|
+
import { PROJECTS_ENV_VAR, loadProjectDefaults } from '../defaults.js';
|
|
6
7
|
import { loadRunners } from '../runner.js';
|
|
8
|
+
import { DEFAULT_LIMIT, MAX_LIMIT } from '../report.js';
|
|
7
9
|
import { loadTmpDirMode } from '../tmpdir.js';
|
|
10
|
+
import { findUnmatchedIgnores, renderUnmatched } from '../unmatched.js';
|
|
8
11
|
import { VERSION } from '../version.js';
|
|
9
12
|
import { failure, log, nullable, projectArgument, readOnly, toFailure } from './shared.js';
|
|
10
13
|
import { writesAllowed } from './writes.js';
|
|
@@ -24,6 +27,11 @@ export function registerListProjects(server, roots) {
|
|
|
24
27
|
config: nullable(z.string()),
|
|
25
28
|
hasGit: z.boolean().describe('Of analyse_changed hier bruikbaar is'),
|
|
26
29
|
runner: nullable(z.string()).describe('Commando waarmee PHPStan hier draait, of null voor de host'),
|
|
30
|
+
defaults: nullable(z.object({
|
|
31
|
+
memoryLimit: nullable(z.string()),
|
|
32
|
+
timeoutSeconds: nullable(z.number()),
|
|
33
|
+
config: nullable(z.string()),
|
|
34
|
+
})).describe('Standaarden die de server voor dit project zet; een tool-argument gaat voor'),
|
|
27
35
|
})),
|
|
28
36
|
problems: z.array(z.object({ root: z.string(), problem: z.string() })),
|
|
29
37
|
},
|
|
@@ -38,6 +46,14 @@ export function registerListProjects(server, roots) {
|
|
|
38
46
|
const problems = roots
|
|
39
47
|
.filter((root) => root.problem !== null)
|
|
40
48
|
.map((root) => ({ root: root.raw, problem: root.problem }));
|
|
49
|
+
// Kapotte standaarden laten de lijst heel (describeProject valt dan terug op
|
|
50
|
+
// wat er ligt), maar horen hier wel te staan: anders lijkt het alsof ze gelden.
|
|
51
|
+
try {
|
|
52
|
+
loadProjectDefaults();
|
|
53
|
+
}
|
|
54
|
+
catch (error) {
|
|
55
|
+
problems.push({ root: PROJECTS_ENV_VAR, problem: error instanceof Error ? error.message : String(error) });
|
|
56
|
+
}
|
|
41
57
|
return {
|
|
42
58
|
content: [{ type: 'text', text: renderProjects(projects, problems) }],
|
|
43
59
|
structuredContent: { projects, problems },
|
|
@@ -56,7 +72,8 @@ function renderProjects(projects, problems) {
|
|
|
56
72
|
const phpstan = project.hasPhpstan ? 'phpstan aanwezig' : 'phpstan NIET geïnstalleerd';
|
|
57
73
|
const git = project.hasGit ? 'git' : 'geen git';
|
|
58
74
|
const waar = project.runner === null ? '' : `, via ${project.runner}`;
|
|
59
|
-
|
|
75
|
+
const standaard = project.defaults === null ? '' : `, standaard ${describeDefaults(project.defaults)}`;
|
|
76
|
+
lines.push(`- ${project.path} (${phpstan}, ${config}, ${git}${waar}${standaard})`);
|
|
60
77
|
}
|
|
61
78
|
}
|
|
62
79
|
if (problems.length > 0) {
|
|
@@ -66,6 +83,17 @@ function renderProjects(projects, problems) {
|
|
|
66
83
|
}
|
|
67
84
|
return lines.join('\n');
|
|
68
85
|
}
|
|
86
|
+
/** "geheugen 2G, timeout 600s" — alleen wat gezet is, in een vaste volgorde. */
|
|
87
|
+
function describeDefaults(defaults) {
|
|
88
|
+
const delen = [];
|
|
89
|
+
if (defaults.memoryLimit !== null)
|
|
90
|
+
delen.push(`geheugen ${defaults.memoryLimit}`);
|
|
91
|
+
if (defaults.timeoutSeconds !== null)
|
|
92
|
+
delen.push(`timeout ${String(defaults.timeoutSeconds)}s`);
|
|
93
|
+
if (defaults.config !== null)
|
|
94
|
+
delen.push(`config ${defaults.config}`);
|
|
95
|
+
return delen.join(', ');
|
|
96
|
+
}
|
|
69
97
|
/**
|
|
70
98
|
* Eén prompt met het werkpatroon. Er zijn zes tools waarvan drie op elkaar lijken;
|
|
71
99
|
* zonder dit moet het model de juiste volgorde uit de losse beschrijvingen
|
|
@@ -91,6 +119,14 @@ export function registerServerConfig(server, roots) {
|
|
|
91
119
|
tmpDir: nullable(z.string()).describe('"project" of "shared"'),
|
|
92
120
|
writesAllowed: z.boolean().describe('Of generate_baseline geregistreerd is'),
|
|
93
121
|
runners: z.array(z.string()).describe('Projecten met een eigen uitvoeringsomgeving'),
|
|
122
|
+
projectDefaults: z
|
|
123
|
+
.array(z.object({
|
|
124
|
+
project: z.string(),
|
|
125
|
+
memoryLimit: nullable(z.string()),
|
|
126
|
+
timeoutSeconds: nullable(z.number()),
|
|
127
|
+
config: nullable(z.string()),
|
|
128
|
+
}))
|
|
129
|
+
.describe('Projecten met eigen standaarden; een tool-argument gaat daar nog voor'),
|
|
94
130
|
problems: z
|
|
95
131
|
.array(z.string())
|
|
96
132
|
.describe('Instellingen die geweigerd zijn; die velden staan dan op null'),
|
|
@@ -109,6 +145,12 @@ export function registerServerConfig(server, roots) {
|
|
|
109
145
|
tmpDir: setting(() => loadTmpDirMode(), problems),
|
|
110
146
|
writesAllowed: writesAllowed(),
|
|
111
147
|
runners: setting(() => [...loadRunners().keys()], problems) ?? [],
|
|
148
|
+
projectDefaults: setting(() => [...loadProjectDefaults().entries()].map(([project, defaults]) => ({
|
|
149
|
+
project,
|
|
150
|
+
memoryLimit: defaults.memoryLimit ?? null,
|
|
151
|
+
timeoutSeconds: defaults.timeoutSeconds ?? null,
|
|
152
|
+
config: defaults.config ?? null,
|
|
153
|
+
})), problems) ?? [],
|
|
112
154
|
problems,
|
|
113
155
|
};
|
|
114
156
|
return {
|
|
@@ -142,6 +184,11 @@ function renderConfig(config) {
|
|
|
142
184
|
}
|
|
143
185
|
}
|
|
144
186
|
lines.push('', `Geheugenlimiet: ${config.memoryLimit ?? 'niet gezet (die van PHP zelf)'}`, `Tegelijk: ${config.maxParallel === null ? 'onbekend' : String(config.maxParallel)}`, `Tijdelijke map: ${config.tmpDir === null ? 'onbekend' : config.tmpDir}`, `Schrijvende tools: ${config.writesAllowed ? 'aan (generate_baseline bestaat)' : 'uit'}`, `Eigen omgeving: ${config.runners.length === 0 ? 'geen' : config.runners.join(', ')}`);
|
|
187
|
+
if (config.projectDefaults.length > 0) {
|
|
188
|
+
lines.push('', 'Standaarden per project (een tool-argument gaat voor):');
|
|
189
|
+
for (const entry of config.projectDefaults)
|
|
190
|
+
lines.push(` ${entry.project}: ${describeDefaults(entry)}`);
|
|
191
|
+
}
|
|
145
192
|
if (config.problems.length > 0) {
|
|
146
193
|
lines.push('', 'Geweigerde instellingen:');
|
|
147
194
|
for (const problem of config.problems)
|
|
@@ -221,4 +268,96 @@ export function registerBaselineSummary(server, roots) {
|
|
|
221
268
|
}
|
|
222
269
|
});
|
|
223
270
|
}
|
|
271
|
+
/** Hangt `unmatched_ignores` aan de server: negeerregels die niets meer doen. */
|
|
272
|
+
export function registerUnmatchedIgnores(server, roots) {
|
|
273
|
+
server.registerTool('unmatched_ignores', {
|
|
274
|
+
title: 'Verouderde negeerregels opsporen',
|
|
275
|
+
description: 'Draait een volledige analyse met reportUnmatchedIgnoredErrors aan en geeft de ' +
|
|
276
|
+
'negeerregels terug die niets meer matchen, of minder vaak dan hun count — uit de ' +
|
|
277
|
+
'baseline en uit ignoreErrors in de config. Zo’n regel hoort bij een fout die opgelost ' +
|
|
278
|
+
'is en kan weg. Verandert niets aan het project: de tijdelijke config staat erbuiten. ' +
|
|
279
|
+
'Werkt niet op een project met een eigen uitvoeringsomgeving (runner).',
|
|
280
|
+
inputSchema: {
|
|
281
|
+
project: projectArgument,
|
|
282
|
+
memoryLimit: z
|
|
283
|
+
.string()
|
|
284
|
+
.optional()
|
|
285
|
+
.describe('Bijv. "1G"; dit is een volledige analyse, dus die kan meer nodig hebben'),
|
|
286
|
+
timeoutSeconds: z.number().int().positive().max(1800).optional(),
|
|
287
|
+
offset: z.number().int().min(0).optional().describe('Sla de eerste N regels over'),
|
|
288
|
+
limit: z
|
|
289
|
+
.number()
|
|
290
|
+
.int()
|
|
291
|
+
.min(1)
|
|
292
|
+
.max(MAX_LIMIT)
|
|
293
|
+
.optional()
|
|
294
|
+
.describe(`Hoeveel regels dit antwoord bevat (standaard ${String(DEFAULT_LIMIT)})`),
|
|
295
|
+
},
|
|
296
|
+
outputSchema: {
|
|
297
|
+
project: z.string(),
|
|
298
|
+
baselineFiles: z.array(z.string()).describe('De baseline-bestanden die de config includeert'),
|
|
299
|
+
totals: z.object({
|
|
300
|
+
unmatched: z.number(),
|
|
301
|
+
countTooHigh: z.number(),
|
|
302
|
+
inBaseline: z.number(),
|
|
303
|
+
general: z.number(),
|
|
304
|
+
otherFindings: z
|
|
305
|
+
.number()
|
|
306
|
+
.describe('Gewone bevindingen uit dezelfde run; een nieuwe baseline zou die óók verstoppen'),
|
|
307
|
+
}),
|
|
308
|
+
byPath: z.array(z.object({ path: z.string(), count: z.number() })),
|
|
309
|
+
entries: z.array(z.object({
|
|
310
|
+
path: z.string().describe('Pad relatief aan de projectroot'),
|
|
311
|
+
identifier: nullable(z.string()),
|
|
312
|
+
pattern: z.string(),
|
|
313
|
+
kind: z.enum(['unmatched', 'countTooHigh']),
|
|
314
|
+
expected: nullable(z.number()),
|
|
315
|
+
occurred: nullable(z.number()),
|
|
316
|
+
inBaseline: nullable(z.boolean()).describe('Of de regel uit een geïncludeerde baseline komt; null als die niet te lezen was'),
|
|
317
|
+
})),
|
|
318
|
+
general: z
|
|
319
|
+
.array(z.string())
|
|
320
|
+
.describe('Patronen zonder pad die niets meer matchen; die staan niet in de baseline'),
|
|
321
|
+
generalErrors: z.array(z.string()),
|
|
322
|
+
warnings: z
|
|
323
|
+
.array(z.string())
|
|
324
|
+
.describe('Staat hier "Result is incomplete", dan kan PHPStan verouderde regels missen'),
|
|
325
|
+
notices: z.array(z.string()),
|
|
326
|
+
omitted: z.object({ general: z.number(), generalErrors: z.number(), warnings: z.number() }),
|
|
327
|
+
page: z.object({
|
|
328
|
+
offset: z.number(),
|
|
329
|
+
limit: z.number(),
|
|
330
|
+
returned: z.number(),
|
|
331
|
+
total: z.number(),
|
|
332
|
+
hasMore: z.boolean(),
|
|
333
|
+
}),
|
|
334
|
+
},
|
|
335
|
+
annotations: readOnly(),
|
|
336
|
+
}, async (args, extra) => {
|
|
337
|
+
const begin = Date.now();
|
|
338
|
+
try {
|
|
339
|
+
const resolved = resolveProject(args.project, roots);
|
|
340
|
+
log(server, 'debug', { gebeurtenis: 'negeerregels controleren', project: resolved.path });
|
|
341
|
+
const report = await findUnmatchedIgnores(resolved, {
|
|
342
|
+
...(args.memoryLimit === undefined ? {} : { memoryLimit: args.memoryLimit }),
|
|
343
|
+
...(args.timeoutSeconds === undefined ? {} : { timeoutMs: args.timeoutSeconds * 1000 }),
|
|
344
|
+
signal: extra.signal,
|
|
345
|
+
}, { offset: args.offset, limit: args.limit });
|
|
346
|
+
log(server, 'info', {
|
|
347
|
+
gebeurtenis: 'negeerregels gecontroleerd',
|
|
348
|
+
project: resolved.path,
|
|
349
|
+
verouderd: report.totals.unmatched + report.totals.countTooHigh,
|
|
350
|
+
algemeen: report.totals.general,
|
|
351
|
+
duurMs: Date.now() - begin,
|
|
352
|
+
});
|
|
353
|
+
return {
|
|
354
|
+
content: [{ type: 'text', text: renderUnmatched(report) }],
|
|
355
|
+
structuredContent: { ...report },
|
|
356
|
+
};
|
|
357
|
+
}
|
|
358
|
+
catch (error) {
|
|
359
|
+
return toFailure(error);
|
|
360
|
+
}
|
|
361
|
+
});
|
|
362
|
+
}
|
|
224
363
|
//# sourceMappingURL=inspect.js.map
|
|
@@ -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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"}
|
package/dist/tools/prompts.d.ts
CHANGED
|
@@ -1,3 +1,10 @@
|
|
|
1
1
|
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
|
-
/**
|
|
2
|
+
/**
|
|
3
|
+
* Hangt de prompts aan de server: het werkpatroon om je eigen wijziging na te kijken,
|
|
4
|
+
* en dat om te zien wat een level hoger kost.
|
|
5
|
+
*
|
|
6
|
+
* Een prompt en geen tool, omdat het alleen bestaande tools combineert. Een tool kost
|
|
7
|
+
* context in elke `tools/list`, ook in een sessie die hem nooit gebruikt; een prompt
|
|
8
|
+
* alleen als iemand hem kiest.
|
|
9
|
+
*/
|
|
3
10
|
export declare function registerPrompts(server: McpServer): void;
|
package/dist/tools/prompts.js
CHANGED
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
/**
|
|
2
|
+
/**
|
|
3
|
+
* Hangt de prompts aan de server: het werkpatroon om je eigen wijziging na te kijken,
|
|
4
|
+
* en dat om te zien wat een level hoger kost.
|
|
5
|
+
*
|
|
6
|
+
* Een prompt en geen tool, omdat het alleen bestaande tools combineert. Een tool kost
|
|
7
|
+
* context in elke `tools/list`, ook in een sessie die hem nooit gebruikt; een prompt
|
|
8
|
+
* alleen als iemand hem kiest.
|
|
9
|
+
*/
|
|
3
10
|
export function registerPrompts(server) {
|
|
11
|
+
registerReviewPrompt(server);
|
|
12
|
+
registerLevelPrompt(server);
|
|
13
|
+
}
|
|
14
|
+
/** Het werkpatroon om je eigen wijziging na te kijken. */
|
|
15
|
+
function registerReviewPrompt(server) {
|
|
4
16
|
server.registerPrompt('phpstan_wijziging_nakijken', {
|
|
5
|
-
title: 'Eigen wijziging nakijken met PHPStan',
|
|
17
|
+
title: 'Eigen wijziging nakijken/reviewen met PHPStan',
|
|
6
18
|
description: 'Het werkpatroon om je eigen wijziging na te kijken zonder het hele project door te rekenen.',
|
|
7
19
|
argsSchema: {
|
|
8
20
|
project: z
|
|
@@ -28,9 +40,15 @@ export function registerPrompts(server) {
|
|
|
28
40
|
'2. Staat er "LET OP" of "Ter info" boven het rapport, lees dat eerst: een',
|
|
29
41
|
' onvolledige analyse of een baseline die meedoet maakt een schone uitslag',
|
|
30
42
|
' onbetrouwbaar.',
|
|
31
|
-
'3.
|
|
43
|
+
'3. Begin bij de bevindingen met een + (`onChangedLine`): die staan op een regel',
|
|
44
|
+
' die je gewijzigd hebt. Kijk daarna naar de rest van die bestanden — een',
|
|
45
|
+
' aangepaste signatuur levert fouten op bij de aanroepen, en die regels heb je',
|
|
46
|
+
' niet aangeraakt. Wat daar duidelijk al stond, laat je liggen.',
|
|
47
|
+
'4. Repareer de bevindingen bij de bron. Verzwak geen types naar `mixed` en voeg',
|
|
32
48
|
' niets aan de baseline toe.',
|
|
33
|
-
'
|
|
49
|
+
'5. Draai `analyse_changed` opnieuw tot het schoon is — zónder runId, want die',
|
|
50
|
+
' geeft het resultaat van vóór je reparatie. Een runId is alleen voor de',
|
|
51
|
+
' volgende pagina van hetzelfde resultaat. Blijven er veel',
|
|
34
52
|
' bevindingen van één soort over, gebruik dan `identifiers` om er per soort',
|
|
35
53
|
' door te lopen.',
|
|
36
54
|
'',
|
|
@@ -42,4 +60,67 @@ export function registerPrompts(server) {
|
|
|
42
60
|
],
|
|
43
61
|
}));
|
|
44
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Wat een level hoger kost: twee tellingen en het verschil ertussen. Met `limit: 1`,
|
|
65
|
+
* want alleen de samenvatting telt, en die gaat altijd over álle bevindingen.
|
|
66
|
+
*/
|
|
67
|
+
function registerLevelPrompt(server) {
|
|
68
|
+
server.registerPrompt('phpstan_level_verhogen', {
|
|
69
|
+
title: 'Wat kost een level hoger?',
|
|
70
|
+
description: 'Telt hoeveel bevindingen er bijkomen als het project een PHPStan-level omhoog gaat, ' +
|
|
71
|
+
'per soort en per bestand, zonder iets aan de code of de config te veranderen.',
|
|
72
|
+
argsSchema: {
|
|
73
|
+
project: z
|
|
74
|
+
.string()
|
|
75
|
+
.optional()
|
|
76
|
+
.describe('Absoluut pad naar de projectroot; laat leeg om eerst list_projects te doen'),
|
|
77
|
+
level: z
|
|
78
|
+
.string()
|
|
79
|
+
.optional()
|
|
80
|
+
.describe('Het level om naartoe te gaan; standaard het huidige plus één'),
|
|
81
|
+
},
|
|
82
|
+
}, ({ project, level }) => ({
|
|
83
|
+
messages: [
|
|
84
|
+
{
|
|
85
|
+
role: 'user',
|
|
86
|
+
content: {
|
|
87
|
+
type: 'text',
|
|
88
|
+
text: [
|
|
89
|
+
project === undefined || project === ''
|
|
90
|
+
? 'Roep eerst `list_projects` aan en kies het project dat ik bedoel.'
|
|
91
|
+
: `Werk in het project ${project}.`,
|
|
92
|
+
'',
|
|
93
|
+
'Zoek uit wat het kost om dit project een PHPStan-level omhoog te zetten:',
|
|
94
|
+
'1. Zoek het huidige level op: `parameters.level` in de config die list_projects',
|
|
95
|
+
' noemt, of in een config die daar geïncludeerd wordt — vaak een gedeelde config',
|
|
96
|
+
' in vendor/. Staat het al op `max` of 10, zeg dan dat er geen hoger level is en',
|
|
97
|
+
' stop. Vind je het niet, zeg dat en kies er niet zelf een: een te laag gekozen',
|
|
98
|
+
' level geeft mínder bevindingen, en dan lijkt een hoger level gratis.',
|
|
99
|
+
'2. `analyse_project` zonder level en met `limit: 1`. Alleen de tellingen tellen;',
|
|
100
|
+
' die gaan altijd over álle bevindingen, niet over de ene op de pagina.',
|
|
101
|
+
level === undefined || level === ''
|
|
102
|
+
? '3. `analyse_project` met `level` op het huidige plus één, weer met `limit: 1`.'
|
|
103
|
+
: `3. \`analyse_project\` met \`level: "${level}"\`, weer met \`limit: 1\`.`,
|
|
104
|
+
'4. Het verschil tussen de twee totalen is wat het hogere level kost. Leg de',
|
|
105
|
+
' `summary.byIdentifier` van beide naast elkaar: de soorten die erbij komen of',
|
|
106
|
+
' flink groeien zijn het werk. Tel `ignore.*` niet mee: dat zijn inline',
|
|
107
|
+
' `@phpstan-ignore`-regels die op dat level niets te negeren hebben, geen nieuw',
|
|
108
|
+
' werk. Geeft het hogere level zonder die mínder bevindingen dan het huidige, dan',
|
|
109
|
+
' klopt het huidige level niet: stop en meld dat.',
|
|
110
|
+
'5. Staat er bij de eerste analyse "Ter info" over een baseline, dan zijn fouten',
|
|
111
|
+
' van het huidige level daar al verborgen en zegt de tweede telling vooral wat',
|
|
112
|
+
' het nieuwe level toevoegt. Zeg dat erbij.',
|
|
113
|
+
'',
|
|
114
|
+
'Rapporteer het aantal extra bevindingen, de soorten die het meest bijdragen en de',
|
|
115
|
+
'zwaarst getroffen bestanden. Onderscheid wat mechanisch op te lossen is (zoals',
|
|
116
|
+
'ontbrekende types bij `missingType.*`) van wat op echte fouten kan wijzen (zoals',
|
|
117
|
+
'`argument.type` of een aanroep op iets dat null kan zijn). Verander niets aan de',
|
|
118
|
+
'code of de config; dit is een verkenning. Loopt een analyse tegen de timeout aan,',
|
|
119
|
+
'geef dan `timeoutSeconds` mee.',
|
|
120
|
+
].join('\n'),
|
|
121
|
+
},
|
|
122
|
+
},
|
|
123
|
+
],
|
|
124
|
+
}));
|
|
125
|
+
}
|
|
45
126
|
//# sourceMappingURL=prompts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/tools/prompts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/tools/prompts.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/shared.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import type { AnalyseOptions } from '../phpstan.js';
|
|
4
|
-
import type { Window } from '../report.js';
|
|
4
|
+
import type { ChangedLineCheck, Window } from '../report.js';
|
|
5
5
|
import type { ResolvedProject } from '../project.js';
|
|
6
|
+
import type { RunStore } from '../runs.js';
|
|
6
7
|
import type { Root } from '../roots.js';
|
|
7
8
|
import type { FailureDetails, FailureReason } from '../failure.js';
|
|
8
9
|
/** Tekstresultaat waar het model iets aan heeft als er iets misgaat. */
|
|
@@ -56,6 +57,7 @@ export declare const analysisShape: {
|
|
|
56
57
|
message: z.ZodString;
|
|
57
58
|
identifier: z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<null>]>;
|
|
58
59
|
tip: z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<null>]>;
|
|
60
|
+
onChangedLine: z.ZodOptional<z.ZodBoolean>;
|
|
59
61
|
}, z.core.$strip>>;
|
|
60
62
|
page: z.ZodObject<{
|
|
61
63
|
offset: z.ZodNumber;
|
|
@@ -65,13 +67,30 @@ export declare const analysisShape: {
|
|
|
65
67
|
hasMore: z.ZodBoolean;
|
|
66
68
|
}, z.core.$strip>;
|
|
67
69
|
filter: z.ZodUnion<readonly [z.ZodArray<z.ZodString>, z.ZodLiteral<null>]>;
|
|
70
|
+
runId: z.ZodUnion<readonly [z.ZodString, z.ZodLiteral<null>]>;
|
|
71
|
+
changedLines: z.ZodUnion<readonly [z.ZodObject<{
|
|
72
|
+
onChangedLine: z.ZodNumber;
|
|
73
|
+
elsewhere: z.ZodNumber;
|
|
74
|
+
onlyChangedLines: z.ZodBoolean;
|
|
75
|
+
}, z.core.$strip>, z.ZodLiteral<null>]>;
|
|
68
76
|
};
|
|
69
77
|
export declare const configArgument: z.ZodOptional<z.ZodString>;
|
|
70
78
|
export declare const windowShape: {
|
|
71
79
|
identifiers: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
72
80
|
offset: z.ZodOptional<z.ZodNumber>;
|
|
73
81
|
limit: z.ZodOptional<z.ZodNumber>;
|
|
82
|
+
runId: z.ZodOptional<z.ZodString>;
|
|
74
83
|
};
|
|
84
|
+
/**
|
|
85
|
+
* Of een pagina uit een eerder resultaat mag komen, en onder welke sleutel. De
|
|
86
|
+
* sleutel komt van de tool zelf: alleen die weet welke argumenten bepalen wát er
|
|
87
|
+
* geanalyseerd wordt.
|
|
88
|
+
*/
|
|
89
|
+
export interface Reuse {
|
|
90
|
+
readonly runs: RunStore;
|
|
91
|
+
readonly key: string;
|
|
92
|
+
readonly runId?: string | undefined;
|
|
93
|
+
}
|
|
75
94
|
/**
|
|
76
95
|
* Argumenten die alle analyse-tools delen. Los gehouden van de zod-schema's, want
|
|
77
96
|
* die verschillen per tool in welke velden erbij staan.
|
|
@@ -94,15 +113,20 @@ export declare function window(args: {
|
|
|
94
113
|
offset?: number | undefined;
|
|
95
114
|
limit?: number | undefined;
|
|
96
115
|
identifiers?: string[] | undefined;
|
|
116
|
+
onlyChangedLines?: boolean | undefined;
|
|
97
117
|
}): Window;
|
|
98
118
|
/**
|
|
99
119
|
* Wat een tool met een geresolvet project wil doen: analyseren met deze opties, of
|
|
100
120
|
* niets — dat laatste is geen fout maar een uitkomst, zoals "geen enkel bestand
|
|
101
121
|
* gewijzigd". Dan wordt PHPStan niet gestart en gaat er alleen tekst terug.
|
|
122
|
+
*
|
|
123
|
+
* `onChangedLine` hoort bij het plan en niet bij de tool: pas als git gevraagd is
|
|
124
|
+
* weet je welke regels er gewijzigd zijn, en dat gebeurt binnen het plan.
|
|
102
125
|
*/
|
|
103
126
|
type Plan = {
|
|
104
127
|
readonly options: AnalyseOptions;
|
|
105
128
|
readonly heading?: string;
|
|
129
|
+
readonly onChangedLine?: ChangedLineCheck;
|
|
106
130
|
} | {
|
|
107
131
|
readonly nothingToDo: string;
|
|
108
132
|
};
|
|
@@ -119,7 +143,7 @@ export declare function log(server: McpServer, level: 'info' | 'debug', data: Re
|
|
|
119
143
|
* Eerder resolveerde analyse_file het project en deed runAnalysis dat daarna nog
|
|
120
144
|
* een keer.
|
|
121
145
|
*/
|
|
122
|
-
export declare function runAnalysis(server: McpServer, roots: Root[], project: string, plan: (resolved: ResolvedProject) => Plan | Promise<Plan>, window: Window, signal
|
|
146
|
+
export declare function runAnalysis(server: McpServer, roots: Root[], project: string, plan: (resolved: ResolvedProject) => Plan | Promise<Plan>, window: Window, signal: AbortSignal | undefined, reuse: Reuse): Promise<ToolResult>;
|
|
123
147
|
/**
|
|
124
148
|
* Analyseren verandert de broncode niet. PHPStan schrijft wel zijn resultcache weg,
|
|
125
149
|
* maar dat is geen wijziging waar de gebruiker iets van merkt.
|
package/dist/tools/shared.js
CHANGED
|
@@ -52,6 +52,11 @@ export const analysisShape = {
|
|
|
52
52
|
message: z.string(),
|
|
53
53
|
identifier: nullable(z.string()),
|
|
54
54
|
tip: nullable(z.string()),
|
|
55
|
+
onChangedLine: z
|
|
56
|
+
.boolean()
|
|
57
|
+
.optional()
|
|
58
|
+
.describe('Alleen bij analyse_changed: of de bevinding op een regel staat die in de wijziging zit. ' +
|
|
59
|
+
'Onwaar betekent niet dat hij er al stond — een aangepaste signatuur raakt de aanroepen'),
|
|
55
60
|
})),
|
|
56
61
|
page: z
|
|
57
62
|
.object({
|
|
@@ -63,6 +68,13 @@ export const analysisShape = {
|
|
|
63
68
|
})
|
|
64
69
|
.describe('Welk deel van de bevindingen dit antwoord bevat'),
|
|
65
70
|
filter: nullable(z.array(z.string())).describe('Op welke identifiers deze pagina beperkt is, of null als er niet gefilterd is'),
|
|
71
|
+
runId: nullable(z.string()).describe('Geef dit mee bij de volgende pagina, dan komt die uit hetzelfde resultaat; null als er niets geanalyseerd is'),
|
|
72
|
+
changedLines: nullable(z.object({
|
|
73
|
+
onChangedLine: z.number(),
|
|
74
|
+
elsewhere: z.number(),
|
|
75
|
+
onlyChangedLines: z.boolean(),
|
|
76
|
+
})).describe('Hoeveel bevindingen op een gewijzigde regel staan, over álle bevindingen; ' +
|
|
77
|
+
'null als er geen wijziging is om tegen te leggen'),
|
|
66
78
|
};
|
|
67
79
|
export const configArgument = z
|
|
68
80
|
.string()
|
|
@@ -83,6 +95,12 @@ export const windowShape = {
|
|
|
83
95
|
.max(MAX_LIMIT)
|
|
84
96
|
.optional()
|
|
85
97
|
.describe(`Hoeveel bevindingen dit antwoord bevat (standaard ${String(DEFAULT_LIMIT)})`),
|
|
98
|
+
runId: z
|
|
99
|
+
.string()
|
|
100
|
+
.optional()
|
|
101
|
+
.describe('De runId uit een eerder antwoord: dan komt deze pagina uit dat resultaat in plaats van uit ' +
|
|
102
|
+
'een nieuwe analyse, zodat de totalen gelijk blijven. Alleen offset, limit, identifiers en ' +
|
|
103
|
+
'onlyChangedLines mogen dan anders zijn'),
|
|
86
104
|
};
|
|
87
105
|
/**
|
|
88
106
|
* Zet de gedeelde argumenten om in AnalyseOptions. `config` gaat door resolveWithin:
|
|
@@ -104,6 +122,7 @@ export function window(args) {
|
|
|
104
122
|
offset: args.offset,
|
|
105
123
|
limit: args.limit,
|
|
106
124
|
...(args.identifiers === undefined ? {} : { identifiers: args.identifiers }),
|
|
125
|
+
...(args.onlyChangedLines === undefined ? {} : { onlyChangedLines: args.onlyChangedLines }),
|
|
107
126
|
};
|
|
108
127
|
}
|
|
109
128
|
/**
|
|
@@ -121,10 +140,23 @@ export function log(server, level, data) {
|
|
|
121
140
|
* Eerder resolveerde analyse_file het project en deed runAnalysis dat daarna nog
|
|
122
141
|
* een keer.
|
|
123
142
|
*/
|
|
124
|
-
export async function runAnalysis(server, roots, project, plan, window, signal) {
|
|
143
|
+
export async function runAnalysis(server, roots, project, plan, window, signal, reuse) {
|
|
125
144
|
const begin = Date.now();
|
|
126
145
|
try {
|
|
146
|
+
// Eerst resolven, ook voor een pagina uit een eerder resultaat: de whitelist
|
|
147
|
+
// geldt bij elke aanroep, en de runId moet bij dit project horen.
|
|
127
148
|
const resolved = resolveProject(project, roots);
|
|
149
|
+
let fallback = null;
|
|
150
|
+
if (reuse.runId !== undefined) {
|
|
151
|
+
const stored = reuse.runs.get(reuse.runId, resolved.path, reuse.key);
|
|
152
|
+
if (stored !== null)
|
|
153
|
+
return fromStoredRun(server, stored, window);
|
|
154
|
+
// Geen fout: dat kost het model een ronde om te ontdekken wat het toch al kan
|
|
155
|
+
// doen. Wel hardop, want de tellingen kunnen nu afwijken van eerdere pagina's.
|
|
156
|
+
fallback =
|
|
157
|
+
`runId "${reuse.runId}" is onbekend, verlopen of hoort bij andere argumenten; ` +
|
|
158
|
+
'dit is een nieuwe analyse, dus de tellingen kunnen afwijken van eerdere pagina’s.';
|
|
159
|
+
}
|
|
128
160
|
const chosen = await plan(resolved);
|
|
129
161
|
if ('nothingToDo' in chosen) {
|
|
130
162
|
// Toch het volledige rapportschema teruggeven: een client die op
|
|
@@ -140,7 +172,7 @@ export async function runAnalysis(server, roots, project, plan, window, signal)
|
|
|
140
172
|
}, {});
|
|
141
173
|
return {
|
|
142
174
|
content: [{ type: 'text', text: chosen.nothingToDo }],
|
|
143
|
-
structuredContent: { ...empty },
|
|
175
|
+
structuredContent: { ...empty, runId: null },
|
|
144
176
|
};
|
|
145
177
|
}
|
|
146
178
|
// Het signaal komt uit het MCP-verzoek zelf: annuleert de client, dan wordt de
|
|
@@ -157,17 +189,43 @@ export async function runAnalysis(server, roots, project, plan, window, signal)
|
|
|
157
189
|
waarschuwingen: result.warnings.length,
|
|
158
190
|
duurMs: Date.now() - begin,
|
|
159
191
|
});
|
|
160
|
-
const
|
|
192
|
+
const notices = collectNotices(resolved);
|
|
193
|
+
const runId = reuse.runs.put({
|
|
194
|
+
project: resolved.path,
|
|
195
|
+
key: reuse.key,
|
|
196
|
+
result,
|
|
197
|
+
notices,
|
|
198
|
+
...(chosen.heading === undefined ? {} : { heading: chosen.heading }),
|
|
199
|
+
...(chosen.onChangedLine === undefined ? {} : { onChangedLine: chosen.onChangedLine }),
|
|
200
|
+
});
|
|
201
|
+
const report = buildReport(result, window, fallback === null ? notices : [...notices, fallback], chosen.onChangedLine);
|
|
161
202
|
const heading = chosen.heading === undefined ? '' : `${chosen.heading}\n\n`;
|
|
162
203
|
return {
|
|
163
|
-
content: [{ type: 'text', text: heading + renderReport(report) }],
|
|
164
|
-
structuredContent: { ...report },
|
|
204
|
+
content: [{ type: 'text', text: heading + renderReport(report, runId) }],
|
|
205
|
+
structuredContent: { ...report, runId },
|
|
165
206
|
};
|
|
166
207
|
}
|
|
167
208
|
catch (error) {
|
|
168
209
|
return toFailure(error);
|
|
169
210
|
}
|
|
170
211
|
}
|
|
212
|
+
/**
|
|
213
|
+
* Een pagina uit een eerder resultaat. Met de leeftijd erbij: wat er sindsdien in de
|
|
214
|
+
* code veranderd is, zit hier niet in, en wie net iets gerepareerd heeft moet dat
|
|
215
|
+
* weten voordat hij denkt dat het niet geholpen heeft.
|
|
216
|
+
*/
|
|
217
|
+
function fromStoredRun(server, stored, window) {
|
|
218
|
+
const seconden = Math.max(0, Math.round((Date.now() - stored.createdAt) / 1000));
|
|
219
|
+
const herkomst = `Deze pagina komt uit de analyse van ${String(seconden)}s geleden (runId ${stored.id}); ` +
|
|
220
|
+
'wat er sindsdien in de code veranderd is, zit er niet in.';
|
|
221
|
+
log(server, 'debug', { gebeurtenis: 'pagina uit eerdere analyse', project: stored.project, runId: stored.id });
|
|
222
|
+
const report = buildReport(stored.result, window, [...stored.notices, herkomst], stored.onChangedLine);
|
|
223
|
+
const heading = stored.heading === undefined ? '' : `${stored.heading}\n\n`;
|
|
224
|
+
return {
|
|
225
|
+
content: [{ type: 'text', text: heading + renderReport(report, stored.id) }],
|
|
226
|
+
structuredContent: { ...report, runId: stored.id },
|
|
227
|
+
};
|
|
228
|
+
}
|
|
171
229
|
/**
|
|
172
230
|
* Wat deze server zelf bij een analyse te melden heeft. Nu alleen de baseline: doet
|
|
173
231
|
* die mee, dan rapporteert PHPStan alleen wat er nieuw bij komt, en dan is een
|
package/dist/tools/shared.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/tools/shared.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEnF,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/tools/shared.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAEnF,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAI9D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAS5C;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAsB,MAAS;IACrD,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC;KAC7B,MAAM,EAAE;KACR,QAAQ,CAAC,sEAAsE,CAAC,CAAC;AAEpF,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;IACvE,aAAa,EAAE,CAAC;SACb,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,CAAC,6EAA6E,CAAC;IAC1F,QAAQ,EAAE,CAAC;SACR,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,CACP,iFAAiF;QAC/E,4EAA4E,CAC/E;IACH,YAAY,EAAE,CAAC;SACZ,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,CAAC,8DAA8D,CAAC;IAC3E,OAAO,EAAE,CAAC;SACP,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,CACP,mFAAmF;QACjF,sCAAsC,CACzC;IACH,OAAO,EAAE,CAAC;SACP,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;SAC3D,QAAQ,CAAC,8DAA8D,CAAC;IAC3E,OAAO,EAAE,CAAC;SACP,MAAM,CAAC;QACN,iBAAiB,EAAE,CAAC,CAAC,MAAM,EAAE;QAC7B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAClE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;KAC/E,CAAC;SACD,QAAQ,CAAC,oEAAoE,CAAC;IACjF,QAAQ,EAAE,CAAC,CAAC,KAAK,CACf,CAAC,CAAC,MAAM,CAAC;QACP,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;QAC5D,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;QACnB,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAChC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACzB,aAAa,EAAE,CAAC;aACb,OAAO,EAAE;aACT,QAAQ,EAAE;aACV,QAAQ,CACP,0FAA0F;YACxF,wFAAwF,CAC3F;KACJ,CAAC,CACH;IACD,IAAI,EAAE,CAAC;SACJ,MAAM,CAAC;QACN,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;QACjB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;KACrB,CAAC;SACD,QAAQ,CAAC,iDAAiD,CAAC;IAC9D,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,QAAQ,CAC5C,+EAA+E,CAChF;IACD,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAClC,8GAA8G,CAC/G;IACD,YAAY,EAAE,QAAQ,CACpB,CAAC,CAAC,MAAM,CAAC;QACP,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,gBAAgB,EAAE,CAAC,CAAC,OAAO,EAAE;KAC9B,CAAC,CACH,CAAC,QAAQ,CACR,4EAA4E;QAC1E,kDAAkD,CACrD;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC;KAC5B,MAAM,EAAE;KACR,QAAQ,EAAE;KACV,QAAQ,CACP,gFAAgF;IAC9E,gCAAgC,CACnC,CAAC;AAEJ,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,WAAW,EAAE,CAAC;SACX,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CACP,uEAAuE;QACrE,8EAA8E,CACjF;IACH,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;IACvF,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,SAAS,CAAC;SACd,QAAQ,EAAE;SACV,QAAQ,CAAC,qDAAqD,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC;IAC1F,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACP,6FAA6F;QAC3F,4FAA4F;QAC5F,wCAAwC,CAC3C;CACJ,CAAC;AAwBF;;;;;GAKG;AACH,MAAM,UAAU,MAAM,CAAC,QAAyB,EAAE,IAAgB;IAChE,OAAO;QACL,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAC1D,GAAG,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACtF,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5E,GAAG,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,cAAc,GAAG,IAAI,EAAE,CAAC;KACxF,CAAC;AACJ,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,MAAM,CAAC,IAKtB;IACC,OAAO;QACL,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,GAAG,CAAC,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;QAC5E,GAAG,CAAC,IAAI,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC;KAC5F,CAAC;AACJ,CAAC;AAcD;;;;;GAKG;AACH,MAAM,UAAU,GAAG,CAAC,MAAiB,EAAE,KAAuB,EAAE,IAA6B;IAC3F,KAAK,MAAM,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;AACvG,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAiB,EACjB,KAAa,EACb,OAAe,EACf,IAAyD,EACzD,MAAc,EACd,MAA+B,EAC/B,KAAY;IAEZ,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAEzB,IAAI,CAAC;QACH,6EAA6E;QAC7E,kEAAkE;QAClE,MAAM,QAAQ,GAAG,cAAc,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAEhD,IAAI,QAAQ,GAAkB,IAAI,CAAC;QACnC,IAAI,KAAK,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YACrE,IAAI,MAAM,KAAK,IAAI;gBAAE,OAAO,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;YAElE,8EAA8E;YAC9E,+EAA+E;YAC/E,QAAQ;gBACN,UAAU,KAAK,CAAC,KAAK,0DAA0D;oBAC/E,mFAAmF,CAAC;QACxF,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEpC,IAAI,aAAa,IAAI,MAAM,EAAE,CAAC;YAC5B,iEAAiE;YACjE,wEAAwE;YACxE,sCAAsC;YACtC,MAAM,KAAK,GAAG,WAAW,CACvB;gBACE,OAAO,EAAE,QAAQ,CAAC,IAAI;gBACtB,QAAQ,EAAE,EAAE;gBACZ,aAAa,EAAE,EAAE;gBACjB,QAAQ,EAAE,EAAE;gBACZ,YAAY,EAAE,EAAE;gBAChB,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;aAC5C,EACD,EAAE,CACH,CAAC;YACF,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;gBACrD,iBAAiB,EAAE,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;aAC7C,CAAC;QACJ,CAAC;QAED,+EAA+E;QAC/E,2EAA2E;QAC3E,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE,OAAO,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;QAEjF,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;YACrC,GAAG,MAAM,CAAC,OAAO;YACjB,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC;SAC5C,CAAC,CAAC;QAEH,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE;YAClB,WAAW,EAAE,eAAe;YAC5B,OAAO,EAAE,QAAQ,CAAC,IAAI;YACtB,WAAW,EAAE,MAAM,CAAC,MAAM,CAAC,UAAU;YACrC,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,MAAM;YACtC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;SAC3B,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,cAAc,CAAC,QAAQ,CAAC,CAAC;QACzC,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC;YAC3B,OAAO,EAAE,QAAQ,CAAC,IAAI;YACtB,GAAG,EAAE,KAAK,CAAC,GAAG;YACd,MAAM;YACN,OAAO;YACP,GAAG,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;YACpE,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;SACvF,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,WAAW,CACxB,MAAM,EACN,MAAM,EACN,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,EAAE,QAAQ,CAAC,EACpD,MAAM,CAAC,aAAa,CACrB,CAAC;QACF,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,MAAM,CAAC;QAE5E,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;YACxE,iBAAiB,EAAE,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE;SACxC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,SAAS,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,aAAa,CAAC,MAAiB,EAAE,MAAgB,EAAE,MAAc;IACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IACjF,MAAM,QAAQ,GACZ,uCAAuC,MAAM,CAAC,QAAQ,CAAC,oBAAoB,MAAM,CAAC,EAAE,KAAK;QACzF,2DAA2D,CAAC;IAE9D,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,4BAA4B,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;IAE/G,MAAM,MAAM,GAAG,WAAW,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,CAAC,aAAa,CAAC,CAAC;IACvG,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,OAAO,MAAM,CAAC;IAE5E,OAAO;QACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC;QAC5E,iBAAiB,EAAE,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE;KACnD,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,SAAS,cAAc,CAAC,OAAwB;IAC9C,MAAM,QAAQ,GAAG,wBAAwB,CAAC,OAAO,CAAC,CAAC;IACnD,OAAO,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC7C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,QAAQ;IACtB,OAAO,EAAE,YAAY,EAAE,IAAI,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AACpG,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,MAAM;IACpB,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AACpG,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,MAAM;IACpB,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;AACrG,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,IAAI,KAAK,YAAY,WAAW,EAAE,CAAC;QACjC,OAAO,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7D,CAAC;IAED,6EAA6E;IAC7E,0DAA0D;IAC1D,MAAM,KAAK,CAAC;AACd,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,OAAO,CACrB,IAAY,EACZ,SAAwB,gBAAgB,EACxC,UAA0B,EAAE;IAE5B,MAAM,MAAM,GAAG;QACb,EAAE,EAAE,KAAK;QACT,MAAM;QACN,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC;QACzE,GAAG,CAAC,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC;QAChE,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW,EAAE,CAAC;QAClF,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC;KAC9D,CAAC;IAEF,OAAO;QACL,OAAO,EAAE,IAAI;QACb,OAAO,EAAE;YACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE;YACtB,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE;SACxD;KACF,CAAC;AACJ,CAAC"}
|