@grafema/core 0.2.9 → 0.2.10

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.
@@ -65,6 +65,12 @@ export declare class PhaseRunner {
65
65
  * Merges dependencies + devDependencies + peerDependencies from package.json.
66
66
  * Returns empty Set when no package.json is available (non-npm service).
67
67
  */
68
+ /**
69
+ * Extract service dependency package names from the manifest.
70
+ * Handles both per-service (manifest.service) and global (manifest.services[]) contexts.
71
+ * Returns null when no packageJson is available (cannot filter — run all plugins).
72
+ * Returns empty Set when packageJson exists but has no dependencies (filter can be applied).
73
+ */
68
74
  private extractServiceDependencies;
69
75
  /**
70
76
  * Execute a plugin, collect diagnostics, and check for fatal errors.
@@ -1 +1 @@
1
- {"version":3,"file":"PhaseRunner.d.ts","sourceRoot":"","sources":["../src/PhaseRunner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EAA6B,MAAM,EAAa,iBAAiB,EAAE,WAAW,EAAE,gBAAgB,EAAe,MAAM,gBAAgB,CAAC;AAIlJ,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAGhF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;IACpB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,cAAc,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACrC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;CACzB;AAED,qBAAa,WAAW;IAGV,OAAO,CAAC,IAAI;IAFxB,OAAO,CAAC,uBAAuB,CAAK;gBAEhB,IAAI,EAAE,eAAe;IAEzC,0BAA0B,IAAI,MAAM;IAIpC,4BAA4B,IAAI,IAAI;IAIpC;;;;OAIG;YACW,kBAAkB;IA6BhC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAiE1B;;;;OAIG;IACH,OAAO,CAAC,0BAA0B;IAoBlC;;;;OAIG;YACW,aAAa;IA8ErB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG;QAAE,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAyF5H;;;;;;;OAOG;YACW,4BAA4B;IAuE1C;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CAS5B"}
1
+ {"version":3,"file":"PhaseRunner.d.ts","sourceRoot":"","sources":["../src/PhaseRunner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACjE,OAAO,KAAK,EAA6B,MAAM,EAAa,iBAAiB,EAAE,WAAW,EAAE,gBAAgB,EAAe,MAAM,gBAAgB,CAAC;AAIlJ,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sCAAsC,CAAC;AAGhF;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,IAAI,EAAE,YAAY,KAAK,IAAI,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,UAAU,EAAE,gBAAgB,CAAC;IAC7B,aAAa,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,OAAO,CAAC;IACpB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,cAAc,CAAC,EAAE,iBAAiB,EAAE,CAAC;IACrC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;CACzB;AAED,qBAAa,WAAW;IAGV,OAAO,CAAC,IAAI;IAFxB,OAAO,CAAC,uBAAuB,CAAK;gBAEhB,IAAI,EAAE,eAAe;IAEzC,0BAA0B,IAAI,MAAM;IAIpC,4BAA4B,IAAI,IAAI;IAIpC;;;;OAIG;YACW,kBAAkB;IA6BhC;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAiE1B;;;;OAIG;IACH;;;;;OAKG;IACH,OAAO,CAAC,0BAA0B;IAyClC;;;;OAIG;YACW,aAAa;IA8ErB,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,aAAa,CAAC,GAAG;QAAE,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;KAAE,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IA+F5H;;;;;;;OAOG;YACW,4BAA4B;IAuE1C;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CAS5B"}
@@ -109,19 +109,45 @@ export class PhaseRunner {
109
109
  * Merges dependencies + devDependencies + peerDependencies from package.json.
110
110
  * Returns empty Set when no package.json is available (non-npm service).
111
111
  */
112
+ /**
113
+ * Extract service dependency package names from the manifest.
114
+ * Handles both per-service (manifest.service) and global (manifest.services[]) contexts.
115
+ * Returns null when no packageJson is available (cannot filter — run all plugins).
116
+ * Returns empty Set when packageJson exists but has no dependencies (filter can be applied).
117
+ */
112
118
  extractServiceDependencies(context) {
113
119
  const manifest = context.manifest;
120
+ // Collect packageJson objects from all available sources:
121
+ // - manifest.service (per-service context from INDEXING)
122
+ // - manifest.services[] (global context from ANALYSIS after REG-478)
123
+ const packageJsons = [];
114
124
  const service = manifest?.service;
115
- const metadata = service?.metadata;
116
- const packageJson = metadata?.packageJson;
117
- if (!packageJson)
118
- return new Set();
125
+ if (service) {
126
+ const meta = service.metadata;
127
+ const pj = meta?.packageJson;
128
+ if (pj)
129
+ packageJsons.push(pj);
130
+ }
131
+ const services = manifest?.services;
132
+ if (services && Array.isArray(services)) {
133
+ for (const svc of services) {
134
+ const meta = svc.metadata;
135
+ const pj = meta?.packageJson;
136
+ if (pj)
137
+ packageJsons.push(pj);
138
+ }
139
+ }
140
+ // No packageJson found anywhere — cannot filter, signal with null
141
+ if (packageJsons.length === 0)
142
+ return null;
119
143
  const deps = new Set();
120
- for (const field of ['dependencies', 'devDependencies', 'peerDependencies']) {
121
- const fieldValue = packageJson[field];
122
- if (fieldValue && typeof fieldValue === 'object') {
123
- for (const pkg of Object.keys(fieldValue)) {
124
- deps.add(pkg);
144
+ for (const packageJson of packageJsons) {
145
+ for (const field of ['dependencies', 'devDependencies', 'peerDependencies']) {
146
+ const fieldValue = packageJson[field];
147
+ if (fieldValue && typeof fieldValue === 'object') {
148
+ for (const pkg of Object.keys(fieldValue)) {
149
+ deps.add(pkg);
150
+ }
125
151
  }
126
152
  }
127
153
  }
@@ -226,14 +252,19 @@ export class PhaseRunner {
226
252
  }
227
253
  // Track accumulated changed types for ENRICHMENT skip optimization (fallback path)
228
254
  const accumulatedTypes = new Set();
255
+ // Pre-compute service dependencies for ANALYSIS plugin filter (REG-482)
256
+ // null = no packageJson found, cannot filter → run all plugins
257
+ // Set = packageJson available, filter by covers (even if Set is empty)
258
+ const serviceDeps = phaseName === 'ANALYSIS' ? this.extractServiceDependencies(context) : null;
229
259
  // Execute plugins sequentially (non-ENRICHMENT phases or non-batch backends)
230
260
  for (let i = 0; i < phasePlugins.length; i++) {
231
261
  const plugin = phasePlugins[i];
232
262
  // Plugin applicability filter for ANALYSIS phase (REG-482)
233
- if (phaseName === 'ANALYSIS') {
263
+ // Only filter when serviceDeps is a Set (packageJson was found).
264
+ // When serviceDeps is null (no packageJson), skip filtering — run all plugins.
265
+ if (serviceDeps !== null) {
234
266
  const covers = plugin.metadata.covers;
235
267
  if (covers && covers.length > 0) {
236
- const serviceDeps = this.extractServiceDependencies(context);
237
268
  if (!covers.some(pkg => serviceDeps.has(pkg))) {
238
269
  logger.debug(`[SKIP] ${plugin.metadata.name} — no covered packages [${covers.join(', ')}] in service dependencies`);
239
270
  continue;
@@ -1 +1 @@
1
- {"version":3,"file":"PhaseRunner.js","sourceRoot":"","sources":["../src/PhaseRunner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PhaseRunner.js","sourceRoot":"","sources":["../src/PhaseRunner.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@grafema/core",
3
- "version": "0.2.9",
3
+ "version": "0.2.10",
4
4
  "description": "Core analysis engine for Grafema code analysis toolkit",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -42,8 +42,8 @@
42
42
  "node-source-walk": "^7.0.1",
43
43
  "oxc-parser": "^0.96.0",
44
44
  "yaml": "^2.8.2",
45
- "@grafema/rfdb-client": "0.2.9",
46
- "@grafema/types": "0.2.9"
45
+ "@grafema/rfdb-client": "0.2.10",
46
+ "@grafema/types": "0.2.10"
47
47
  },
48
48
  "optionalDependencies": {
49
49
  "@grafema/rfdb": "^0.1.0-alpha.2"
@@ -173,20 +173,47 @@ export class PhaseRunner {
173
173
  * Merges dependencies + devDependencies + peerDependencies from package.json.
174
174
  * Returns empty Set when no package.json is available (non-npm service).
175
175
  */
176
- private extractServiceDependencies(context: Partial<PluginContext>): Set<string> {
176
+ /**
177
+ * Extract service dependency package names from the manifest.
178
+ * Handles both per-service (manifest.service) and global (manifest.services[]) contexts.
179
+ * Returns null when no packageJson is available (cannot filter — run all plugins).
180
+ * Returns empty Set when packageJson exists but has no dependencies (filter can be applied).
181
+ */
182
+ private extractServiceDependencies(context: Partial<PluginContext>): Set<string> | null {
177
183
  const manifest = context.manifest as Record<string, unknown>;
178
- const service = manifest?.service as Record<string, unknown>;
179
- const metadata = service?.metadata as Record<string, unknown>;
180
- const packageJson = metadata?.packageJson as Record<string, unknown>;
181
184
 
182
- if (!packageJson) return new Set();
185
+ // Collect packageJson objects from all available sources:
186
+ // - manifest.service (per-service context from INDEXING)
187
+ // - manifest.services[] (global context from ANALYSIS after REG-478)
188
+ const packageJsons: Record<string, unknown>[] = [];
189
+
190
+ const service = manifest?.service as Record<string, unknown> | undefined;
191
+ if (service) {
192
+ const meta = service.metadata as Record<string, unknown> | undefined;
193
+ const pj = meta?.packageJson as Record<string, unknown> | undefined;
194
+ if (pj) packageJsons.push(pj);
195
+ }
196
+
197
+ const services = manifest?.services as Record<string, unknown>[] | undefined;
198
+ if (services && Array.isArray(services)) {
199
+ for (const svc of services) {
200
+ const meta = svc.metadata as Record<string, unknown> | undefined;
201
+ const pj = meta?.packageJson as Record<string, unknown> | undefined;
202
+ if (pj) packageJsons.push(pj);
203
+ }
204
+ }
205
+
206
+ // No packageJson found anywhere — cannot filter, signal with null
207
+ if (packageJsons.length === 0) return null;
183
208
 
184
209
  const deps = new Set<string>();
185
- for (const field of ['dependencies', 'devDependencies', 'peerDependencies']) {
186
- const fieldValue = packageJson[field];
187
- if (fieldValue && typeof fieldValue === 'object') {
188
- for (const pkg of Object.keys(fieldValue as Record<string, unknown>)) {
189
- deps.add(pkg);
210
+ for (const packageJson of packageJsons) {
211
+ for (const field of ['dependencies', 'devDependencies', 'peerDependencies']) {
212
+ const fieldValue = packageJson[field];
213
+ if (fieldValue && typeof fieldValue === 'object') {
214
+ for (const pkg of Object.keys(fieldValue as Record<string, unknown>)) {
215
+ deps.add(pkg);
216
+ }
190
217
  }
191
218
  }
192
219
  }
@@ -322,15 +349,21 @@ export class PhaseRunner {
322
349
  // Track accumulated changed types for ENRICHMENT skip optimization (fallback path)
323
350
  const accumulatedTypes = new Set<string>();
324
351
 
352
+ // Pre-compute service dependencies for ANALYSIS plugin filter (REG-482)
353
+ // null = no packageJson found, cannot filter → run all plugins
354
+ // Set = packageJson available, filter by covers (even if Set is empty)
355
+ const serviceDeps = phaseName === 'ANALYSIS' ? this.extractServiceDependencies(context) : null;
356
+
325
357
  // Execute plugins sequentially (non-ENRICHMENT phases or non-batch backends)
326
358
  for (let i = 0; i < phasePlugins.length; i++) {
327
359
  const plugin = phasePlugins[i];
328
360
 
329
361
  // Plugin applicability filter for ANALYSIS phase (REG-482)
330
- if (phaseName === 'ANALYSIS') {
362
+ // Only filter when serviceDeps is a Set (packageJson was found).
363
+ // When serviceDeps is null (no packageJson), skip filtering — run all plugins.
364
+ if (serviceDeps !== null) {
331
365
  const covers = plugin.metadata.covers;
332
366
  if (covers && covers.length > 0) {
333
- const serviceDeps = this.extractServiceDependencies(context);
334
367
  if (!covers.some(pkg => serviceDeps.has(pkg))) {
335
368
  logger.debug(
336
369
  `[SKIP] ${plugin.metadata.name} — no covered packages [${covers.join(', ')}] in service dependencies`