phpstan-mcp-mx 0.11.0 → 0.12.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 CHANGED
@@ -4,6 +4,20 @@ Alle noemenswaardige wijzigingen per versie. Vanaf 0.10.0 gegenereerd door
4
4
  semantic-release uit de commit-historie; de versies daarvoor zijn met de hand
5
5
  geschreven.
6
6
 
7
+ # [0.12.0](https://codeberg.org/MartijnSchimmel/phpstan-mcp-mx/compare/v0.11.1...v0.12.0) (2026-09-10)
8
+
9
+
10
+ ### Features
11
+
12
+ * lees de configuratie ook uit een bestand ([cad80a1](https://codeberg.org/MartijnSchimmel/phpstan-mcp-mx/commit/cad80a13a0bb1453fdfa3e2339e96ee1cfe6fc09))
13
+
14
+ ## [0.11.1](https://codeberg.org/MartijnSchimmel/phpstan-mcp-mx/compare/v0.11.0...v0.11.1) (2026-09-10)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * haal de release-URL niet uit package.json ([8abdbca](https://codeberg.org/MartijnSchimmel/phpstan-mcp-mx/commit/8abdbca70405be2c67b26fd5171efe510977237b))
20
+
7
21
  # [0.11.0](https://codeberg.org/MartijnSchimmel/phpstan-mcp-mx/compare/v0.10.1...v0.11.0) (2026-09-10)
8
22
 
9
23
 
package/README.md CHANGED
@@ -174,6 +174,37 @@ al je projecten.
174
174
 
175
175
  ## Configuratie
176
176
 
177
+ Alles kan als env-variabele in je MCP-config, of in één configbestand. **De omgeving wint van
178
+ het bestand**: die staat bij één client, het bestand geldt voor de hele machine.
179
+
180
+ ### Een configbestand
181
+
182
+ `~/.config/phpstan-mcp/config.json` (of `$XDG_CONFIG_HOME/phpstan-mcp/config.json`, of het
183
+ pad in `PHPSTAN_MCP_CONFIG`):
184
+
185
+ ```json
186
+ {
187
+ "roots": ["/Users/jij/projecten"],
188
+ "memoryLimit": "2G",
189
+ "maxParallel": 2,
190
+ "tmpDir": "project",
191
+ "allowWrites": false,
192
+ "runners": {
193
+ "/Users/jij/projecten/admin": {
194
+ "command": ["docker", "exec", "-w", "/var/www/html", "admin-app"],
195
+ "workdir": "/var/www/html"
196
+ }
197
+ }
198
+ }
199
+ ```
200
+
201
+ Daarmee is je MCP-registratie één regel zonder `--env`, en staat de configuratie op één plek
202
+ in plaats van verdeeld over zes variabelen.
203
+
204
+ Een bestand dat er niet is, is geen fout: dan geldt alleen de omgeving. Een bestand dat er
205
+ wél is maar niet klopt, laat de server niet starten — dan heeft iemand iets bedoeld wat
206
+ anders stilzwijgend niet gebeurt.
207
+
177
208
  ### `PHPSTAN_MCP_ROOTS` (verplicht)
178
209
 
179
210
  `PHPSTAN_MCP_ROOTS` is verplicht: een lijst absolute paden, gescheiden door een dubbele punt
@@ -0,0 +1,40 @@
1
+ import type { FailureDetails, FailureReason } from './failure.js';
2
+ import { ToolFailure } from './failure.js';
3
+ /** Fout die als bruikbare melding naar het model teruggaat, niet als crash. */
4
+ export declare class ConfigError extends ToolFailure {
5
+ constructor(message: string, reason?: FailureReason, details?: FailureDetails);
6
+ }
7
+ /** Env-variabele die een ander configbestand aanwijst dan de standaardplek. */
8
+ export declare const CONFIG_ENV_VAR = "PHPSTAN_MCP_CONFIG";
9
+ /**
10
+ * De instellingen zoals ze in het configbestand mogen staan. Dezelfde zes die ook
11
+ * als env-variabele kunnen: het bestand is een andere plek, geen andere taal.
12
+ */
13
+ export interface FileConfig {
14
+ readonly roots?: readonly string[];
15
+ readonly memoryLimit?: string;
16
+ readonly maxParallel?: number;
17
+ readonly tmpDir?: string;
18
+ readonly allowWrites?: boolean;
19
+ readonly runners?: Record<string, unknown>;
20
+ }
21
+ /**
22
+ * Waar het configbestand staat. `XDG_CONFIG_HOME` wint, anders `~/.config` — de
23
+ * plek waar dit soort bestanden op Linux en macOS gezocht wordt.
24
+ */
25
+ export declare function configPath(env?: NodeJS.ProcessEnv): string;
26
+ /**
27
+ * Leest het configbestand, of een leeg object als het er niet is.
28
+ *
29
+ * Ontbreken is uitdrukkelijk géén fout: zonder bestand geldt alleen wat er in de
30
+ * omgeving staat, en zonder allebei heeft de server geen roots en weigert hij alles.
31
+ * Dat is de veilige kant. Een bestand dat er wél is maar niet klopt, is dat juist
32
+ * wél — dan heeft iemand iets bedoeld wat niet gebeurt.
33
+ */
34
+ export declare function loadConfig(env?: NodeJS.ProcessEnv): FileConfig;
35
+ /**
36
+ * Eén instelling uit het bestand, als tekst. Handig omdat de bestaande loaders al
37
+ * op tekst uit de omgeving werken: zo geldt overal dezelfde validatie, en levert
38
+ * een fout in het bestand dezelfde melding op als een fout in de omgeving.
39
+ */
40
+ export declare function fromConfig(sleutel: keyof FileConfig, env?: NodeJS.ProcessEnv): string | undefined;
package/dist/config.js ADDED
@@ -0,0 +1,68 @@
1
+ import { readFileSync } from 'node:fs';
2
+ import { homedir } from 'node:os';
3
+ import { join } from 'node:path';
4
+ import { ToolFailure } from './failure.js';
5
+ /** Fout die als bruikbare melding naar het model teruggaat, niet als crash. */
6
+ export class ConfigError extends ToolFailure {
7
+ constructor(message, reason = 'invalid_setting', details = {}) {
8
+ super(message, reason, details);
9
+ }
10
+ }
11
+ /** Env-variabele die een ander configbestand aanwijst dan de standaardplek. */
12
+ export const CONFIG_ENV_VAR = 'PHPSTAN_MCP_CONFIG';
13
+ /**
14
+ * Waar het configbestand staat. `XDG_CONFIG_HOME` wint, anders `~/.config` — de
15
+ * plek waar dit soort bestanden op Linux en macOS gezocht wordt.
16
+ */
17
+ export function configPath(env = process.env) {
18
+ const expliciet = env[CONFIG_ENV_VAR]?.trim();
19
+ if (expliciet !== undefined && expliciet !== '')
20
+ return expliciet;
21
+ const basis = env['XDG_CONFIG_HOME']?.trim();
22
+ return join(basis !== undefined && basis !== '' ? basis : join(homedir(), '.config'), 'phpstan-mcp', 'config.json');
23
+ }
24
+ /**
25
+ * Leest het configbestand, of een leeg object als het er niet is.
26
+ *
27
+ * Ontbreken is uitdrukkelijk géén fout: zonder bestand geldt alleen wat er in de
28
+ * omgeving staat, en zonder allebei heeft de server geen roots en weigert hij alles.
29
+ * Dat is de veilige kant. Een bestand dat er wél is maar niet klopt, is dat juist
30
+ * wél — dan heeft iemand iets bedoeld wat niet gebeurt.
31
+ */
32
+ export function loadConfig(env = process.env) {
33
+ const pad = configPath(env);
34
+ let inhoud;
35
+ try {
36
+ inhoud = readFileSync(pad, 'utf8');
37
+ }
38
+ catch {
39
+ return {};
40
+ }
41
+ let ontleed;
42
+ try {
43
+ ontleed = JSON.parse(inhoud);
44
+ }
45
+ catch {
46
+ throw new ConfigError(`${pad} bevat geen geldige JSON.`);
47
+ }
48
+ if (typeof ontleed !== 'object' || ontleed === null || Array.isArray(ontleed)) {
49
+ throw new ConfigError(`${pad} moet een JSON-object zijn met de instellingen erin.`);
50
+ }
51
+ return ontleed;
52
+ }
53
+ /**
54
+ * Eén instelling uit het bestand, als tekst. Handig omdat de bestaande loaders al
55
+ * op tekst uit de omgeving werken: zo geldt overal dezelfde validatie, en levert
56
+ * een fout in het bestand dezelfde melding op als een fout in de omgeving.
57
+ */
58
+ export function fromConfig(sleutel, env = process.env) {
59
+ const waarde = loadConfig(env)[sleutel];
60
+ if (waarde === undefined)
61
+ return undefined;
62
+ if (Array.isArray(waarde))
63
+ return waarde.join(':');
64
+ if (typeof waarde === 'object')
65
+ return JSON.stringify(waarde);
66
+ return String(waarde);
67
+ }
68
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,+EAA+E;AAC/E,MAAM,OAAO,WAAY,SAAQ,WAAW;IAC1C,YAAY,OAAe,EAAE,SAAwB,iBAAiB,EAAE,UAA0B,EAAE;QAClG,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;CACF;AAED,+EAA+E;AAC/E,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AAenD;;;GAGG;AACH,MAAM,UAAU,UAAU,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC7D,MAAM,SAAS,GAAG,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC;IAC9C,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAElE,MAAM,KAAK,GAAG,GAAG,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC;IAC7C,OAAO,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC;AACtH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC7D,MAAM,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC;IAE5B,IAAI,MAAc,CAAC;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,IAAI,OAAgB,CAAC;IACrB,IAAI,CAAC;QACH,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,WAAW,CAAC,GAAG,GAAG,2BAA2B,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC9E,MAAM,IAAI,WAAW,CAAC,GAAG,GAAG,sDAAsD,CAAC,CAAC;IACtF,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,UAAU,CAAC,OAAyB,EAAE,MAAyB,OAAO,CAAC,GAAG;IACxF,MAAM,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC;IACxC,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,SAAS,CAAC;IAE3C,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACnD,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC9D,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC;AACxB,CAAC"}
package/dist/index.js CHANGED
@@ -3,6 +3,7 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
3
3
  import { loadDefaultMemoryLimit, loadMaxParallel } from './phpstan.js';
4
4
  import { loadTmpDirMode } from './tmpdir.js';
5
5
  import { WRITES_ENV_VAR, writesAllowed } from './tools/writes.js';
6
+ import { ToolFailure } from './failure.js';
6
7
  import { loadRoots } from './roots.js';
7
8
  import { createServer } from './server.js';
8
9
  import { VERSION } from './version.js';
@@ -68,7 +69,10 @@ function describeMemoryDefault() {
68
69
  }
69
70
  }
70
71
  main().catch((error) => {
71
- console.error('phpstan-mcp kon niet starten:', error);
72
+ // Een ToolFailure is een fout waar de gebruiker iets aan kan doen — meestal een
73
+ // instelling die niet klopt. Dan is de melding genoeg; de stack erbij maakt het
74
+ // alleen moeilijker te lezen in een clientlog.
75
+ console.error('phpstan-mcp kon niet starten:', error instanceof ToolFailure ? error.message : error);
72
76
  process.exit(1);
73
77
  });
74
78
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,sBAAsB,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,KAAK,UAAU,IAAI;IACjB,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;IAC1B,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAEnC,8EAA8E;IAC9E,kEAAkE;IAClE,MAAM,MAAM,CAAC,OAAO,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAC;IAEjD,OAAO,CAAC,KAAK,CACX,eAAe,OAAO,uBAAuB,KAAK,CAAC,MAAM,yBAAyB;QAChF,qBAAqB,EAAE;QACvB,mBAAmB,EAAE;QACrB,cAAc,EAAE;QAChB,cAAc,EAAE,CACnB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH;;;GAGG;AACH,SAAS,cAAc;IACrB,IAAI,CAAC;QACH,OAAO,cAAc,EAAE,KAAK,QAAQ,CAAC,CAAC,CAAC,2BAA2B,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,aAAa,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IAC/E,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,SAAS,cAAc;IACrB,IAAI,aAAa,EAAE;QAAE,OAAO,yBAAyB,CAAC;IAEtD,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC;IACvD,OAAO,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE;QAClD,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,aAAa,cAAc,cAAc,UAAU,8CAA8C,CAAC;AACxG,CAAC;AAED,sEAAsE;AACtE,SAAS,mBAAmB;IAC1B,IAAI,CAAC;QACH,OAAO,eAAe,MAAM,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC;IAC7D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,aAAa,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IAC/E,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB;IAC5B,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,sBAAsB,EAAE,CAAC;QACvC,OAAO,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,oBAAoB,KAAK,EAAE,CAAC;IAChE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,aAAa,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IAC/E,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { fromConfig } from '../config.js';
1
2
  import { PhpstanError } from './error.js';
2
3
  /** Env-variabele met het aantal analyses dat tegelijk mag draaien. */
3
4
  export const MAX_PARALLEL_ENV_VAR = 'PHPSTAN_MCP_MAX_PARALLEL';
@@ -14,7 +15,7 @@ const DEFAULT_MAX_PARALLEL = 2;
14
15
  * geheugenlimiet: wie dit zet, heeft er iets mee bedoeld.
15
16
  */
16
17
  export function loadMaxParallel(env = process.env) {
17
- const configured = env[MAX_PARALLEL_ENV_VAR]?.trim();
18
+ const configured = (env[MAX_PARALLEL_ENV_VAR] ?? fromConfig('maxParallel', env))?.trim();
18
19
  if (configured === undefined || configured === '')
19
20
  return DEFAULT_MAX_PARALLEL;
20
21
  const parsed = Number(configured);
@@ -1 +1 @@
1
- {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/phpstan/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,sEAAsE;AACtE,MAAM,CAAC,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAE/B;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,MAAyB,OAAO,CAAC,GAAG;IAClE,MAAM,UAAU,GAAG,GAAG,CAAC,oBAAoB,CAAC,EAAE,IAAI,EAAE,CAAC;IACrD,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE;QAAE,OAAO,oBAAoB,CAAC;IAE/E,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IAClC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,YAAY,CACpB,GAAG,oBAAoB,cAAc,UAAU,iDAAiD;YAC9F,mCAAmC,MAAM,CAAC,oBAAoB,CAAC,IAAI,CACtE,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,qEAAqE;AACrE,IAAI,OAAO,GAAG,CAAC,CAAC;AAEhB,MAAM,OAAO,GAAmB,EAAE,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAI,IAAsB;IACtD,gFAAgF;IAChF,yDAAyD;IACzD,OAAO,OAAO,IAAI,eAAe,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,IAAI,CAAC,CAAC;IACb,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,EAAE,CAAC;IACtB,CAAC;YAAS,CAAC;QACT,OAAO,IAAI,CAAC,CAAC;QACb,uEAAuE;QACvE,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC;IACtB,CAAC;AACH,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,MAA+B;IAC7E,IAAI,MAAM,EAAE,OAAO,KAAK,IAAI,EAAE,CAAC;QAC7B,MAAM,IAAI,YAAY,CAAC,kBAAkB,OAAO,mDAAmD,CAAC,CAAC;IACvG,CAAC;AACH,CAAC;AAED,qFAAqF;AACrF,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;AAEnD;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAI,GAAW,EAAE,IAAsB;IAC5D,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IACtD,iFAAiF;IACjF,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAE3C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,sEAAsE;QACtE,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI;YAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/phpstan/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,sEAAsE;AACtE,MAAM,CAAC,MAAM,oBAAoB,GAAG,0BAA0B,CAAC;AAE/D;;;;;GAKG;AACH,MAAM,oBAAoB,GAAG,CAAC,CAAC;AAE/B;;;;GAIG;AACH,MAAM,UAAU,eAAe,CAAC,MAAyB,OAAO,CAAC,GAAG;IAClE,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,UAAU,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC;IACzF,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE;QAAE,OAAO,oBAAoB,CAAC;IAE/E,MAAM,MAAM,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC;IAClC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5C,MAAM,IAAI,YAAY,CACpB,GAAG,oBAAoB,cAAc,UAAU,iDAAiD;YAC9F,mCAAmC,MAAM,CAAC,oBAAoB,CAAC,IAAI,CACtE,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,qEAAqE;AACrE,IAAI,OAAO,GAAG,CAAC,CAAC;AAEhB,MAAM,OAAO,GAAmB,EAAE,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAI,IAAsB;IACtD,gFAAgF;IAChF,yDAAyD;IACzD,OAAO,OAAO,IAAI,eAAe,EAAE,EAAE,CAAC;QACpC,MAAM,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAC9D,CAAC;IAED,OAAO,IAAI,CAAC,CAAC;IACb,IAAI,CAAC;QACH,OAAO,MAAM,IAAI,EAAE,CAAC;IACtB,CAAC;YAAS,CAAC;QACT,OAAO,IAAI,CAAC,CAAC;QACb,uEAAuE;QACvE,OAAO,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC;IACtB,CAAC;AACH,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,cAAc,CAAC,OAAe,EAAE,MAA+B;IAC7E,IAAI,MAAM,EAAE,OAAO,KAAK,IAAI,EAAE,CAAC;QAC7B,MAAM,IAAI,YAAY,CAAC,kBAAkB,OAAO,mDAAmD,CAAC,CAAC;IACvG,CAAC;AACH,CAAC;AAED,qFAAqF;AACrF,MAAM,MAAM,GAAG,IAAI,GAAG,EAA4B,CAAC;AAEnD;;;GAGG;AACH,MAAM,UAAU,OAAO,CAAI,GAAW,EAAE,IAAsB;IAC5D,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IACtD,iFAAiF;IACjF,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACzC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAE3C,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACtB,KAAK,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;QAClB,sEAAsE;QACtE,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI;YAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
package/dist/phpstan.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { fromConfig } from './config.js';
1
2
  import { PhpstanError } from './phpstan/error.js';
2
3
  import { naarHost, naarOmgeving, phpstanIn, runnerFor } from './runner.js';
3
4
  import { collectWarnings, condenseDetails, toResult, tryParse } from './phpstan/output.js';
@@ -204,7 +205,7 @@ async function run(project, options) {
204
205
  * fout zit in de serverconfiguratie en niet in de aanroep.
205
206
  */
206
207
  export function loadDefaultMemoryLimit(env = process.env) {
207
- const configured = env[MEMORY_LIMIT_ENV_VAR]?.trim();
208
+ const configured = (env[MEMORY_LIMIT_ENV_VAR] ?? fromConfig('memoryLimit', env))?.trim();
208
209
  if (configured === undefined || configured === '')
209
210
  return undefined;
210
211
  if (!MEMORY_LIMIT_PATTERN.test(configured)) {
@@ -1 +1 @@
1
- {"version":3,"file":"phpstan.js","sourceRoot":"","sources":["../src/phpstan.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"phpstan.js","sourceRoot":"","sources":["../src/phpstan.ts"],"names":[],"mappings":"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"}
package/dist/roots.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { fromConfig } from './config.js';
1
2
  import { realpathSync, statSync } from 'node:fs';
2
3
  import { delimiter, isAbsolute } from 'node:path';
3
4
  /** Env-variabele met de projectmappen die deze server mag analyseren. */
@@ -8,7 +9,9 @@ export const ROOTS_ENV_VAR = 'PHPSTAN_MCP_ROOTS';
8
9
  * kan uitleggen waarom een verwacht project ontbreekt.
9
10
  */
10
11
  export function loadRoots(env = process.env) {
11
- const configured = env[ROOTS_ENV_VAR];
12
+ // De omgeving wint van het bestand: die staat in de configuratie van één client,
13
+ // het bestand geldt voor de hele machine.
14
+ const configured = env[ROOTS_ENV_VAR] ?? fromConfig('roots', env);
12
15
  if (configured === undefined || configured.trim() === '')
13
16
  return [];
14
17
  const roots = [];
package/dist/roots.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"roots.js","sourceRoot":"","sources":["../src/roots.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAElD,yEAAyE;AACzE,MAAM,CAAC,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAYjD;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC5D,MAAM,UAAU,GAAG,GAAG,CAAC,aAAa,CAAC,CAAC;IACtC,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAEpE,MAAM,KAAK,GAAW,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,6EAA6E;IAC7E,6DAA6D;IAC7D,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QAChD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,GAAG,KAAK,EAAE;YAAE,SAAS;QAEzB,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,4EAA4E;QAC5E,iCAAiC;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,GAAG,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEd,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC3D,CAAC;IAED,IAAI,CAAC;QACH,qEAAqE;QACrE,4EAA4E;QAC5E,uEAAuE;QACvE,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YAClC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;QACrD,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;IACtD,CAAC;AACH,CAAC;AAKD,uEAAuE;AACvE,MAAM,UAAU,QAAQ,CAAC,IAAU;IACjC,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;AAC5B,CAAC"}
1
+ {"version":3,"file":"roots.js","sourceRoot":"","sources":["../src/roots.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAElD,yEAAyE;AACzE,MAAM,CAAC,MAAM,aAAa,GAAG,mBAAmB,CAAC;AAYjD;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,MAAyB,OAAO,CAAC,GAAG;IAC5D,iFAAiF;IACjF,0CAA0C;IAC1C,MAAM,UAAU,GAAG,GAAG,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAClE,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,EAAE,CAAC;IAEpE,MAAM,KAAK,GAAW,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,6EAA6E;IAC7E,6DAA6D;IAC7D,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;QAChD,MAAM,GAAG,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QACzB,IAAI,GAAG,KAAK,EAAE;YAAE,SAAS;QAEzB,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;QAC9B,4EAA4E;QAC5E,iCAAiC;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,IAAI,OAAO,GAAG,EAAE,CAAC;QACtC,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,SAAS;QAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAEd,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACnB,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,WAAW,CAAC,GAAW;IAC9B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACrB,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC3D,CAAC;IAED,IAAI,CAAC;QACH,qEAAqE;QACrE,4EAA4E;QAC5E,uEAAuE;QACvE,MAAM,IAAI,GAAG,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC;YAClC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;QACrD,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,cAAc,EAAE,CAAC;IACtD,CAAC;AACH,CAAC;AAKD,uEAAuE;AACvE,MAAM,UAAU,QAAQ,CAAC,IAAU;IACjC,OAAO,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC;AAC5B,CAAC"}
package/dist/runner.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { fromConfig } from './config.js';
1
2
  import { isAbsolute, join } from 'node:path';
2
3
  import { ToolFailure } from './failure.js';
3
4
  /** Fout die als bruikbare melding naar het model teruggaat, niet als crash. */
@@ -17,7 +18,7 @@ export const RUNNERS_ENV_VAR = 'PHPSTAN_MCP_RUNNERS';
17
18
  * whitelist zinloos maken — dan bepaalt de aanroeper immers wat er uitgevoerd wordt.
18
19
  */
19
20
  export function loadRunners(env = process.env) {
20
- const ruw = env[RUNNERS_ENV_VAR]?.trim();
21
+ const ruw = (env[RUNNERS_ENV_VAR] ?? fromConfig('runners', env))?.trim();
21
22
  if (ruw === undefined || ruw === '')
22
23
  return new Map();
23
24
  let ontleed;
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
package/dist/tmpdir.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { fromConfig } from './config.js';
1
2
  import { ToolFailure } from './failure.js';
2
3
  import { createHash } from 'node:crypto';
3
4
  import { mkdirSync } from 'node:fs';
@@ -23,7 +24,7 @@ const HASH_LENGTH = 12;
23
24
  * een tweede analyse snel is — doet niets meer.
24
25
  */
25
26
  export function loadTmpDirMode(env = process.env) {
26
- const configured = env[TMPDIR_ENV_VAR]?.trim().toLowerCase();
27
+ const configured = (env[TMPDIR_ENV_VAR] ?? fromConfig('tmpDir', env))?.trim().toLowerCase();
27
28
  if (configured === undefined || configured === '')
28
29
  return 'project';
29
30
  if (configured === 'project' || configured === 'shared')
@@ -1 +1 @@
1
- {"version":3,"file":"tmpdir.js","sourceRoot":"","sources":["../src/tmpdir.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE3C,+EAA+E;AAC/E,MAAM,OAAO,WAAY,SAAQ,WAAW;IAC1C,YAAY,OAAe,EAAE,SAAwB,iBAAiB,EAAE,UAA0B,EAAE;QAClG,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;CACF;AAED,gFAAgF;AAChF,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AAEnD,0DAA0D;AAC1D,MAAM,SAAS,GAAG,aAAa,CAAC;AAEhC,sDAAsD;AACtD,MAAM,WAAW,GAAG,EAAE,CAAC;AAUvB;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,MAAyB,OAAO,CAAC,GAAG;IACjE,MAAM,UAAU,GAAG,GAAG,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC7D,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IACpE,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC;IAE3E,MAAM,IAAI,WAAW,CACnB,GAAG,cAAc,cAAc,UAAU,4CAA4C;QACnF,2EAA2E,CAC9E,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IACtF,OAAO,IAAI,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,OAAe,EAAE,MAAyB,OAAO,CAAC,GAAG;IAC7E,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAEhD,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC;QACH,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,WAAW,CACnB,qBAAqB,IAAI,+BAA+B;YACtD,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;YAC7D,OAAO,cAAc,iDAAiD,CACzE,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"tmpdir.js","sourceRoot":"","sources":["../src/tmpdir.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE3C,+EAA+E;AAC/E,MAAM,OAAO,WAAY,SAAQ,WAAW;IAC1C,YAAY,OAAe,EAAE,SAAwB,iBAAiB,EAAE,UAA0B,EAAE;QAClG,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC;CACF;AAED,gFAAgF;AAChF,MAAM,CAAC,MAAM,cAAc,GAAG,oBAAoB,CAAC;AAEnD,0DAA0D;AAC1D,MAAM,SAAS,GAAG,aAAa,CAAC;AAEhC,sDAAsD;AACtD,MAAM,WAAW,GAAG,EAAE,CAAC;AAUvB;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAAC,MAAyB,OAAO,CAAC,GAAG;IACjE,MAAM,UAAU,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC5F,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IACpE,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC;IAE3E,MAAM,IAAI,WAAW,CACnB,GAAG,cAAc,cAAc,UAAU,4CAA4C;QACnF,2EAA2E,CAC9E,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IACtF,OAAO,IAAI,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC;AACnE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,SAAS,CAAC,OAAe,EAAE,MAAyB,OAAO,CAAC,GAAG;IAC7E,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,QAAQ;QAAE,OAAO,EAAE,CAAC;IAEhD,MAAM,IAAI,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,CAAC;QACH,SAAS,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,WAAW,CACnB,qBAAqB,IAAI,+BAA+B;YACtD,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI;YAC7D,OAAO,cAAc,iDAAiD,CACzE,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACjD,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { fromConfig } from '../config.js';
1
2
  import { z } from 'zod';
2
3
  import { clearResultCache, generateBaseline } from '../phpstan.js';
3
4
  import { displayPath } from '../report.js';
@@ -14,7 +15,7 @@ export const WRITES_ENV_VAR = 'PHPSTAN_MCP_ALLOW_WRITES';
14
15
  * nee zegt, kost het model een ronde en context om dat te ontdekken.
15
16
  */
16
17
  export function writesAllowed(env = process.env) {
17
- const configured = env[WRITES_ENV_VAR]?.trim().toLowerCase();
18
+ const configured = (env[WRITES_ENV_VAR] ?? fromConfig('allowWrites', env))?.trim().toLowerCase();
18
19
  return configured === '1' || configured === 'true';
19
20
  }
20
21
  /** Hangt `clear_result_cache` aan de server. Verandert wel iets, maar niet aan de broncode. */
@@ -1 +1 @@
1
- {"version":3,"file":"writes.js","sourceRoot":"","sources":["../../src/tools/writes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"writes.js","sourceRoot":"","sources":["../../src/tools/writes.ts"],"names":[],"mappings":"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"}
package/dist/version.d.ts CHANGED
@@ -6,4 +6,4 @@
6
6
  * Staat los van server.ts omdat tools.ts hem ook nodig heeft, en server.ts
7
7
  * importeert tools.ts — dat zou een cyclus zijn.
8
8
  */
9
- export declare const VERSION = "0.11.0";
9
+ export declare const VERSION = "0.12.0";
package/dist/version.js CHANGED
@@ -6,5 +6,5 @@
6
6
  * Staat los van server.ts omdat tools.ts hem ook nodig heeft, en server.ts
7
7
  * importeert tools.ts — dat zou een cyclus zijn.
8
8
  */
9
- export const VERSION = '0.11.0';
9
+ export const VERSION = '0.12.0';
10
10
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "phpstan-mcp-mx",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "description": "MCP-server die PHPStan ontsluit als tools, voor meerdere PHP-projecten tegelijk",
5
5
  "keywords": [
6
6
  "mcp",