@principal-ai/principal-view-core 0.28.4 → 0.28.6

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.
@@ -10,6 +10,7 @@
10
10
  * mirroring the way `validateScopeNamespaceNesting` handles cross-canvas
11
11
  * checks for scopes/namespaces.
12
12
  */
13
+ import type { FileSystemAdapter } from '@principal-ai/repository-abstraction';
13
14
  import type { AuxiliaryManifest } from '../types/auxiliary';
14
15
  export interface AuxiliaryManifestValidationContext {
15
16
  /** Parsed manifest. When absent, validation is a no-op (manifest is optional). */
@@ -33,6 +34,8 @@ export interface AuxiliaryManifestValidationResult {
33
34
  violations: AuxiliaryManifestViolation[];
34
35
  }
35
36
  export declare class AuxiliaryManifestValidator {
36
- validate(context: AuxiliaryManifestValidationContext): AuxiliaryManifestValidationResult;
37
+ private fsAdapter;
38
+ constructor(fsAdapter: FileSystemAdapter);
39
+ validate(context: AuxiliaryManifestValidationContext): Promise<AuxiliaryManifestValidationResult>;
37
40
  }
38
41
  //# sourceMappingURL=AuxiliaryManifestValidator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AuxiliaryManifestValidator.d.ts","sourceRoot":"","sources":["../../src/auxiliary/AuxiliaryManifestValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAG5D,MAAM,WAAW,kCAAkC;IACjD,kFAAkF;IAClF,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAE7B,8DAA8D;IAC9D,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iCAAiC;IAChD,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,0BAA0B,EAAE,CAAC;CAC1C;AAID,qBAAa,0BAA0B;IACrC,QAAQ,CAAC,OAAO,EAAE,kCAAkC,GAAG,iCAAiC;CAiFzF"}
1
+ {"version":3,"file":"AuxiliaryManifestValidator.d.ts","sourceRoot":"","sources":["../../src/auxiliary/AuxiliaryManifestValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAG5D,MAAM,WAAW,kCAAkC;IACjD,kFAAkF;IAClF,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAE7B,8DAA8D;IAC9D,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,iEAAiE;IACjE,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iCAAiC;IAChD,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,0BAA0B,EAAE,CAAC;CAC1C;AAID,qBAAa,0BAA0B;IACzB,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,iBAAiB;IAE1C,QAAQ,CAAC,OAAO,EAAE,kCAAkC,GAAG,OAAO,CAAC,iCAAiC,CAAC;CAmFxG"}
@@ -13,12 +13,13 @@
13
13
  */
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.AuxiliaryManifestValidator = void 0;
16
- const fs_1 = require("fs");
17
- const path_1 = require("path");
18
16
  const path_helpers_1 = require("../events/path-helpers");
19
17
  const DEFAULT_MANIFEST_PATH = '.principal-views/auxiliary.manifest.json';
20
18
  class AuxiliaryManifestValidator {
21
- validate(context) {
19
+ constructor(fsAdapter) {
20
+ this.fsAdapter = fsAdapter;
21
+ }
22
+ async validate(context) {
22
23
  const violations = [];
23
24
  const { manifest, basePath } = context;
24
25
  const file = context.manifestPath || DEFAULT_MANIFEST_PATH;
@@ -45,12 +46,14 @@ class AuxiliaryManifestValidator {
45
46
  });
46
47
  // Path existence + collect for overlap pass
47
48
  const declaredPaths = [];
48
- areas.forEach((area, areaIdx) => {
49
+ for (let areaIdx = 0; areaIdx < areas.length; areaIdx++) {
50
+ const area = areas[areaIdx];
49
51
  const paths = area.paths || [];
50
- paths.forEach((p, pathIdx) => {
52
+ for (let pathIdx = 0; pathIdx < paths.length; pathIdx++) {
53
+ const p = paths[pathIdx];
51
54
  declaredPaths.push({ areaName: area.name, areaIndex: areaIdx, pathIndex: pathIdx, path: p });
52
- const resolved = (0, path_1.resolve)(basePath, p);
53
- if (!(0, fs_1.existsSync)(resolved)) {
55
+ const resolved = this.fsAdapter.join(basePath, p);
56
+ if (!(await this.fsAdapter.exists(resolved))) {
54
57
  violations.push({
55
58
  ruleId: 'auxiliary-area-path-missing',
56
59
  severity: 'warn',
@@ -61,8 +64,8 @@ class AuxiliaryManifestValidator {
61
64
  suggestion: 'Verify the path exists relative to the repository root, or remove it from the area declaration.',
62
65
  });
63
66
  }
64
- });
65
- });
67
+ }
68
+ }
66
69
  // Path overlap. Unlike scopes, areas have no dotted-name hierarchy, so
67
70
  // parent-child nesting between two areas is just as ambiguous as a flat
68
71
  // overlap — both are flagged.
@@ -1 +1 @@
1
- {"version":3,"file":"AuxiliaryManifestValidator.js","sourceRoot":"","sources":["../../src/auxiliary/AuxiliaryManifestValidator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AuxiliaryManifestValidator.js","sourceRoot":"","sources":["../../src/auxiliary/AuxiliaryManifestValidator.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  * Validates that a .events.canvas file properly documents event namespaces
5
5
  * and their events, with correct namespace extraction and node structure.
6
6
  */
7
+ import type { FileSystemAdapter } from '@principal-ai/repository-abstraction';
7
8
  import type { ExtendedCanvas } from '../types/canvas';
8
9
  /**
9
10
  * Event namespace node structure
@@ -107,6 +108,8 @@ export interface EventsCanvasValidationResult {
107
108
  * Validates events canvas files
108
109
  */
109
110
  export declare class EventsCanvasValidator {
111
+ private fsAdapter;
112
+ constructor(fsAdapter: FileSystemAdapter);
110
113
  /**
111
114
  * Extract namespace from event name (all segments except last)
112
115
  *
@@ -1 +1 @@
1
- {"version":3,"file":"EventsCanvasValidator.d.ts","sourceRoot":"","sources":["../../src/events/EventsCanvasValidator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAsB,MAAM,iBAAiB,CAAC;AAK1E;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,iBAAiB,CAAC;IACxB,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB;;;;;;;;;;;WAWG;QACH,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QACjB,MAAM,EAAE,KAAK,CAAC;YACZ,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;YACrC,WAAW,CAAC,EAAE,MAAM,CAAC;YACrB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;gBAC1B,IAAI,EAAE,MAAM,CAAC;gBACb,QAAQ,CAAC,EAAE,OAAO,CAAC;gBACnB,WAAW,CAAC,EAAE,MAAM,CAAC;aACtB,CAAC,CAAC;SACJ,CAAC,CAAC;KACJ,CAAC;IAEF,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,mCAAmC;IACnC,YAAY,CAAC,EAAE,cAAc,CAAC;IAE9B,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IAEjB,mDAAmD;IACnD,aAAa,CAAC,EAAE,KAAK,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC,CAAC;CACJ;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;IAEf,qBAAqB;IACrB,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAE3B,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IAEb,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAEhB,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IAEf,oBAAoB;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,4CAA4C;IAC5C,KAAK,EAAE,OAAO,CAAC;IAEf,+BAA+B;IAC/B,UAAU,EAAE,qBAAqB,EAAE,CAAC;IAEpC,uBAAuB;IACvB,OAAO,EAAE;QACP,oCAAoC;QACpC,eAAe,EAAE,MAAM,CAAC;QACxB,4BAA4B;QAC5B,oBAAoB,EAAE,MAAM,EAAE,CAAC;QAC/B,+BAA+B;QAC/B,iBAAiB,EAAE,MAAM,EAAE,CAAC;QAC5B,yCAAyC;QACzC,WAAW,EAAE,MAAM,CAAC;QACpB,oDAAoD;QACpD,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAC3B,uCAAuC;QACvC,kBAAkB,EAAE,MAAM,EAAE,CAAC;KAC9B,CAAC;CACH;AAED;;GAEG;AACH,qBAAa,qBAAqB;IAChC;;;;;;;OAOG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAK5B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAsB/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAe9B;;OAEG;IACG,QAAQ,CACZ,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,4BAA4B,CAAC;CAgOzC"}
1
+ {"version":3,"file":"EventsCanvasValidator.d.ts","sourceRoot":"","sources":["../../src/events/EventsCanvasValidator.ts"],"names":[],"mappings":"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"}
@@ -7,13 +7,14 @@
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.EventsCanvasValidator = void 0;
10
- const fs_1 = require("fs");
11
- const path_1 = require("path");
12
10
  const path_helpers_1 = require("./path-helpers");
13
11
  /**
14
12
  * Validates events canvas files
15
13
  */
16
14
  class EventsCanvasValidator {
15
+ constructor(fsAdapter) {
16
+ this.fsAdapter = fsAdapter;
17
+ }
17
18
  /**
18
19
  * Extract namespace from event name (all segments except last)
19
20
  *
@@ -231,8 +232,8 @@ class EventsCanvasValidator {
231
232
  path: p,
232
233
  });
233
234
  // Warn when a declared path does not exist relative to the repo root.
234
- const resolved = (0, path_1.resolve)(basePath, p);
235
- if (!(0, fs_1.existsSync)(resolved)) {
235
+ const resolved = this.fsAdapter.join(basePath, p);
236
+ if (!(await this.fsAdapter.exists(resolved))) {
236
237
  violations.push({
237
238
  ruleId: 'events-namespace-paths-missing',
238
239
  severity: 'warn',
@@ -1 +1 @@
1
- {"version":3,"file":"EventsCanvasValidator.js","sourceRoot":"","sources":["../../src/events/EventsCanvasValidator.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,2BAAgC;AAChC,+BAA+B;AAC/B,iDAA8C;AAoH9C;;GAEG;AACH,MAAa,qBAAqB;IAChC;;;;;;;OAOG;IACK,gBAAgB,CAAC,SAAiB;QACxC,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;YACvB,OAAO,IAAI,CAAC,CAAC,qBAAqB;SACnC;QACD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,IAAS;QACpC,OAAO,IAAI,EAAE,IAAI,KAAK,iBAAiB;YAChC,IAAI,EAAE,SAAS,EAAE,IAAI,KAAK,SAAS,CAAC;IAC7C,CAAC;IAED;;OAEG;IACK,uBAAuB,CAC7B,MAAsB;QAEtB,MAAM,eAAe,GAAG,IAAI,GAAG,EAAuB,CAAC;QAEvD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE;YACrC,IAAI,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE;gBACnC,MAAM,aAAa,GAAG,IAA0B,CAAC;gBACjD,MAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC;gBAC/C,MAAM,MAAM,GAAG,IAAI,GAAG,EAAU,CAAC;gBAEjC,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,EAAE;oBACxD,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;iBACxB;gBAED,eAAe,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;aACxC;SACF;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;IAED;;OAEG;IACK,sBAAsB,CAC5B,eAAyC;QAEzC,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;QAEpD,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,eAAe,EAAE;YACjD,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE;gBAC9B,MAAM,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBAC5D,iBAAiB,CAAC,GAAG,CAAC,SAAS,EAAE,kBAAkB,IAAI,EAAE,CAAC,CAAC;aAC5D;SACF;QAED,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ,CACZ,OAAsC;QAEtC,MAAM,UAAU,GAA4B,EAAE,CAAC;QAC/C,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;QAE7D,qBAAqB;QACrB,MAAM,OAAO,GAAG;YACd,eAAe,EAAE,CAAC;YAClB,oBAAoB,EAAE,EAAc;YACpC,iBAAiB,EAAE,EAAc;YACjC,WAAW,EAAE,CAAC;YACd,gBAAgB,EAAE,EAAc;YAChC,kBAAkB,EAAE,EAAc;SACnC,CAAC;QAEF,yBAAyB;QACzB,IAAI,CAAC,YAAY,EAAE;YACjB,UAAU,CAAC,IAAI,CAAC;gBACd,MAAM,EAAE,wBAAwB;gBAChC,QAAQ,EAAE,OAAO;gBACjB,IAAI,EAAE,gBAAgB,IAAI,oCAAoC;gBAC9D,OAAO,EAAE,4DAA4D;gBACrE,MAAM,EAAE,2DAA2D;gBACnE,UAAU,EAAE,uEAAuE;aACpF,CAAC,CAAC;YAEH,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,UAAU;gBACV,OAAO;aACR,CAAC;SACH;QAED,qCAAqC;QACrC,MAAM,eAAe,GAAG,IAAI,CAAC,uBAAuB,CAAC,YAAY,CAAC,CAAC;QACnE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC;QACvD,OAAO,CAAC,oBAAoB,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC1D,OAAO,CAAC,eAAe,GAAG,cAAc,CAAC,IAAI,CAAC;QAE9C,yDAAyD;QACzD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAC;QACpC,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC5D,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAAU,CAAC;QAE9C,KAAK,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,IAAI,eAAe,EAAE;YACjD,KAAK,MAAM,SAAS,IAAI,MAAM,EAAE;gBAC9B,SAAS,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;gBACzB,OAAO,CAAC,WAAW,EAAE,CAAC;gBAEtB,oCAAoC;gBACpC,MAAM,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBAE5D,IAAI,CAAC,kBAAkB,EAAE;oBACvB,UAAU,CAAC,IAAI,CAAC;wBACd,MAAM,EAAE,2BAA2B;wBACnC,QAAQ,EAAE,OAAO;wBACjB,IAAI,EAAE,gBAAgB,IAAI,oCAAoC;wBAC9D,IAAI,EAAE,kCAAkC,SAAS,IAAI;wBACrD,OAAO,EAAE,eAAe,SAAS,8CAA8C;wBAC/E,MAAM,EAAE,4DAA4D;wBACpE,UAAU,EAAE,kCAAkC,SAAS,IAAI,SAAS,GAAG;qBACxE,CAAC,CAAC;oBACH,SAAS;iBACV;gBAED,yBAAyB,CAAC,GAAG,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;gBAC7D,mBAAmB,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;gBAE5C,iFAAiF;gBACjF,IAAI,kBAAkB,KAAK,SAAS,EAAE;oBACpC,UAAU,CAAC,IAAI,CAAC;wBACd,MAAM,EAAE,2BAA2B;wBACnC,QAAQ,EAAE,OAAO;wBACjB,IAAI,EAAE,gBAAgB,IAAI,oCAAoC;wBAC9D,IAAI,EAAE,yBAAyB,SAAS,6BAA6B,SAAS,IAAI;wBAClF,OAAO,EAAE,UAAU,SAAS,4CAA4C,kBAAkB,eAAe,SAAS,IAAI;wBACtH,MAAM,EAAE,sEAAsE;wBAC9E,UAAU,EAAE,eAAe,SAAS,wBAAwB,kBAAkB,GAAG;qBAClF,CAAC,CAAC;iBACJ;qBAAM;oBACL,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBAC1C;aACF;SACF;QAED,oCAAoC;QACpC,KAAK,MAAM,SAAS,IAAI,mBAAmB,EAAE;YAC3C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;gBAClC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC1C,UAAU,CAAC,IAAI,CAAC;oBACd,MAAM,EAAE,+BAA+B;oBACvC,QAAQ,EAAE,OAAO;oBACjB,IAAI,EAAE,gBAAgB,IAAI,oCAAoC;oBAC9D,OAAO,EAAE,cAAc,SAAS,mCAAmC;oBACnE,MAAM,EAAE,mDAAmD;oBAC3D,UAAU,EAAE,gEAAgE,SAAS,GAAG;iBACzF,CAAC,CAAC;aACJ;SACF;QAED,6CAA6C;QAC7C,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,KAAK,IAAI,EAAE,EAAE;YAC3C,IAAI,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE;gBACnC,MAAM,aAAa,GAAG,IAA0B,CAAC;gBACjD,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,WAAW,EAAE;oBACxC,UAAU,CAAC,IAAI,CAAC;wBACd,MAAM,EAAE,sCAAsC;wBAC9C,QAAQ,EAAE,MAAM;wBAChB,IAAI,EAAE,gBAAgB,IAAI,oCAAoC;wBAC9D,IAAI,EAAE,aAAa,aAAa,CAAC,EAAE,cAAc;wBACjD,OAAO,EAAE,cAAc,aAAa,CAAC,SAAS,CAAC,IAAI,4BAA4B;wBAC/E,MAAM,EAAE,mCAAmC;wBAC3C,UAAU,EAAE,wEAAwE;qBACrF,CAAC,CAAC;iBACJ;gBAED,mDAAmD;gBACnD,KAAK,MAAM,KAAK,IAAI,aAAa,CAAC,SAAS,CAAC,MAAM,IAAI,EAAE,EAAE;oBACxD,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE;wBACtB,UAAU,CAAC,IAAI,CAAC;4BACd,MAAM,EAAE,kCAAkC;4BAC1C,QAAQ,EAAE,MAAM;4BAChB,IAAI,EAAE,gBAAgB,IAAI,oCAAoC;4BAC9D,IAAI,EAAE,aAAa,aAAa,CAAC,EAAE,6BAA6B,KAAK,CAAC,IAAI,IAAI;4BAC9E,OAAO,EAAE,UAAU,KAAK,CAAC,IAAI,4BAA4B;4BACzD,MAAM,EAAE,+BAA+B;4BACvC,UAAU,EAAE,mEAAmE;yBAChF,CAAC,CAAC;qBACJ;oBAED,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE;wBACnB,UAAU,CAAC,IAAI,CAAC;4BACd,MAAM,EAAE,+BAA+B;4BACvC,QAAQ,EAAE,MAAM;4BAChB,IAAI,EAAE,gBAAgB,IAAI,oCAAoC;4BAC9D,IAAI,EAAE,aAAa,aAAa,CAAC,EAAE,6BAA6B,KAAK,CAAC,IAAI,IAAI;4BAC9E,OAAO,EAAE,UAAU,KAAK,CAAC,IAAI,+BAA+B;4BAC5D,MAAM,EAAE,oCAAoC;4BAC5C,UAAU,EAAE,2DAA2D;yBACxE,CAAC,CAAC;qBACJ;iBACF;aACF;SACF;QAED,mFAAmF;QACnF,kFAAkF;QAClF,MAAM,aAAa,GAA+D,EAAE,CAAC;QACrF,KAAK,MAAM,IAAI,IAAI,YAAY,CAAC,KAAK,IAAI,EAAE,EAAE;YAC3C,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;gBAAE,SAAS;YAC/C,MAAM,aAAa,GAAG,IAA0B,CAAC;YACjD,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,CAAC,KAAK,CAAC;YAC5C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAE3C,uEAAuE;YACvE,sEAAsE;YACtE,uDAAuD;YACvD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpB,UAAU,CAAC,IAAI,CAAC;oBACd,MAAM,EAAE,iCAAiC;oBACzC,QAAQ,EAAE,MAAM;oBAChB,IAAI,EAAE,gBAAgB,IAAI,oCAAoC;oBAC9D,IAAI,EAAE,aAAa,aAAa,CAAC,EAAE,oBAAoB;oBACvD,OAAO,EAAE,cAAc,aAAa,CAAC,SAAS,CAAC,IAAI,cAAc,KAAK,CAAC,MAAM,QAAQ;oBACrF,MAAM,EAAE,+IAA+I;oBACvJ,UAAU,EAAE,0IAA0I;iBACvJ,CAAC,CAAC;aACJ;YAED,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;gBACrB,aAAa,CAAC,IAAI,CAAC;oBACjB,SAAS,EAAE,aAAa,CAAC,SAAS,CAAC,IAAI;oBACvC,MAAM,EAAE,aAAa,CAAC,EAAE;oBACxB,IAAI,EAAE,CAAC;iBACR,CAAC,CAAC;gBAEH,sEAAsE;gBACtE,MAAM,QAAQ,GAAG,IAAA,cAAO,EAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBACtC,IAAI,CAAC,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE;oBACzB,UAAU,CAAC,IAAI,CAAC;wBACd,MAAM,EAAE,gCAAgC;wBACxC,QAAQ,EAAE,MAAM;wBAChB,IAAI,EAAE,gBAAgB,IAAI,oCAAoC;wBAC9D,IAAI,EAAE,aAAa,aAAa,CAAC,EAAE,oBAAoB;wBACvD,OAAO,EAAE,SAAS,CAAC,4BAA4B,aAAa,CAAC,SAAS,CAAC,IAAI,kBAAkB;wBAC7F,MAAM,EAAE,sFAAsF;wBAC9F,UAAU,EAAE,sGAAsG;qBACnH,CAAC,CAAC;iBACJ;aACF;SACF;QAED,2EAA2E;QAC3E,sEAAsE;QACtE,iCAAiC;QACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACjD,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC3B,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS;oBAAE,SAAS;gBAE1C,MAAM,YAAY,GAAG,IAAA,2BAAY,EAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClD,IAAI,YAAY,KAAK,UAAU,EAAE;oBAC/B,UAAU,CAAC,IAAI,CAAC;wBACd,MAAM,EAAE,gCAAgC;wBACxC,QAAQ,EAAE,OAAO;wBACjB,IAAI,EAAE,gBAAgB,IAAI,oCAAoC;wBAC9D,OAAO,EAAE,qCAAqC,CAAC,CAAC,SAAS,OAAO,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,SAAS,OAAO,CAAC,CAAC,IAAI,IAAI;wBAC7G,MAAM,EAAE,sEAAsE;wBAC9E,UAAU,EAAE,2LAA2L;qBACxM,CAAC,CAAC;iBACJ;aACF;SACF;QAED,OAAO,CAAC,eAAe,GAAG,mBAAmB,CAAC,IAAI,CAAC;QAEnD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;QAE9D,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC1B,UAAU;YACV,OAAO;SACR,CAAC;IACJ,CAAC;CACF;AAzSD,sDAySC"}
1
+ {"version":3,"file":"EventsCanvasValidator.js","sourceRoot":"","sources":["../../src/events/EventsCanvasValidator.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -9,7 +9,8 @@
9
9
  * import { ... } from '@principal-ai/principal-view-core/node'
10
10
  */
11
11
  import { isTextNode, isFileNode, isLinkNode, isGroupNode, hasPVExtension, isStandardCanvasNode, isOtelEventNode, isOtelSpanConventionNode, isOtelScopeNode, isOtelResourceNode, isOtelBoundaryNode, isOtelNode, getOtelNodeIdentifier, CANVAS_COLOR_PRESETS, resolveCanvasColor } from './types/canvas';
12
- export type { GraphConfiguration, NodeState, EdgeState, NodeTypeDefinition, EdgeTypeDefinition, Violation, GraphEvent, NodeEvent, EdgeEvent, StateEvent, ComponentLibrary, LogLevel, GraphMetrics, Warning, ValidationResult, EventStream, ConnectionRule, ComponentActivityEvent, ComponentActionEvent, EdgeAnimationEvent, PathBasedEvent, JsonValue, JsonObject, } from './types';
12
+ export type { GraphConfiguration, NodeState, EdgeState, NodeTypeDefinition, EdgeTypeDefinition, Violation, GraphEvent, NodeEvent, EdgeEvent, StateEvent, ComponentLibrary, LogLevel, GraphMetrics, Warning, ValidationResult, EventStream, ConnectionRule, ComponentActivityEvent, ComponentActionEvent, EdgeAnimationEvent, PathBasedEvent, JsonValue, JsonObject, ProjectArea, AuxiliaryManifest, } from './types';
13
+ export { isAuxiliaryManifest } from './types/auxiliary';
13
14
  export type { PathBasedGraphConfiguration } from './types/path-based-config';
14
15
  export type { ConfigurationFile, ConfigurationLoadResult } from './ConfigurationLoader';
15
16
  export type { CanvasColor, CanvasSide, CanvasEndpoint, CanvasBackgroundStyle, CanvasNodeBase, CanvasTextNode, CanvasFileNode, CanvasLinkNode, CanvasGroupNode, CanvasNode, CanvasEdge, Canvas, PVAnimationType, PVAnimationDirection, PVNodeShape, PVEdgeStyle, PVLogLevel, PVNodeState, PVOtelKind, PVOtelCategory, PVOtelSpanMatch, PVOtelResourceMatch, PVOtelExtension, PVEventFieldSchema, PVEventSchema, PVNodeStatus, PVNodeExtension, PVEdgeExtension, PVPathConfig, PVDisplayConfig, PVNodeTypeDefinition, PVEdgeTypeDefinition, PVCanvasExtension, ExtendedCanvasTextNode, ExtendedCanvasFileNode, ExtendedCanvasLinkNode, ExtendedCanvasGroupNode, ExtendedCanvasNode, ExtendedCanvasEdge, ExtendedCanvas, OtelNodeBase, OtelMetadata, OtelEventNode, OtelSpanConventionNode, OtelScopeNode, OtelResourceNode, OtelBoundaryNode, OtelNode, WorkflowChip, } from './types/canvas';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -10,9 +10,9 @@
10
10
  * import { ... } from '@principal-ai/principal-view-core/node'
11
11
  */
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
- exports.createInMemoryVersionRegistry = exports.InMemoryVersionRegistry = exports.isWarnSeverity = exports.isErrorSeverity = exports.getSpanDuration = exports.parseNanoTime = exports.flattenResourceAttributes = exports.getAttributeValue = exports.findAttribute = exports.getAttributeStringValue = exports.TraceOrchestrator = exports.CompositeRegistry = exports.LocalRegistry = exports.RemoteRegistry = exports.OtlpTraceParser = exports.getWorkflowRootSpan = exports.getEventSpan = exports.getEventTemplateString = exports.isEventTemplate = exports.deriveEdgesFromSequence = exports.extractEventSpans = exports.setNestedValue = exports.getNestedValue = exports.computeAggregates = exports.hasEventMatching = exports.getRequiredEvents = exports.selectScenario = exports.ParsedTemplate = exports.parseTemplate = exports.renderEventTemplate = exports.renderWorkflow = exports.getConfigNameFromFilename = exports.isYamlFile = exports.parseYaml = exports.CanvasConverter = exports.resolveCanvasColor = exports.CANVAS_COLOR_PRESETS = exports.getOtelNodeIdentifier = exports.isOtelNode = exports.isOtelBoundaryNode = exports.isOtelResourceNode = exports.isOtelScopeNode = exports.isOtelSpanConventionNode = exports.isOtelEventNode = exports.isStandardCanvasNode = exports.hasPVExtension = exports.isGroupNode = exports.isLinkNode = exports.isFileNode = exports.isTextNode = void 0;
14
- exports.LibraryLoader = exports.EventRecorderService = exports.SessionManager = exports.PathBasedEventProcessor = exports.analyzeCoverage = exports.createDashboardValidator = exports.DashboardValidator = exports.createExecutionValidator = exports.ExecutionValidator = exports.resolveEventSpanColor = exports.getSpanColor = exports.matchSpanPattern = exports.buildSpanColorMapFromCanvases = exports.buildSpanColorMap = exports.extractSpanConventions = exports.extractSpanConvention = exports.DEFAULT_SPAN_COLOR = exports.OtelEventPathsValidator = exports.NamespacePathIndex = exports.EventsCanvasValidator = exports.getAllScopeNames = exports.buildScopeColorMap = exports.normalizeScopes = exports.getScopeColor = exports.getScopeDefinition = exports.getScopeNames = exports.DRAFT_NODE_COLOR = exports.DEFAULT_SCOPE_COLOR = exports.validateScopeNamespaceNesting = exports.ScopePathIndex = exports.ScopesCanvasValidator = exports.buildStoryboardFileManifest = exports.buildWorkflowFileManifest = exports.buildCanvasFileManifest = exports.CanvasDiscovery = exports.SpanMatcher = exports.getScopeMatchSummary = exports.scopeHasMatches = exports.getScopeWithMostSpans = exports.getSpanCountForScope = exports.findScopeByName = exports.getUnmatchedScopes = exports.getPartialMatchedScopes = exports.getMatchedScopes = exports.getAllScopes = exports.getPrimaryScope = exports.getScopeFromUnmatchedSpan = exports.getScopeFromStoryboardMatch = exports.getScopeFromScenarioMatch = exports.groupSpansByTrace = void 0;
15
- exports.InMemoryFileSystemAdapter = exports.getAllNodeIds = exports.findNodesMatchingEventPattern = exports.resolveWorkflowNodeIds = exports.resolveScenarioNodeIds = exports.getNodeEventName = exports.buildEventNodeMap = exports.buildStoryboardContext = exports.LibraryDiscovery = exports.validateLibraryStructure = void 0;
13
+ exports.InMemoryVersionRegistry = exports.isWarnSeverity = exports.isErrorSeverity = exports.getSpanDuration = exports.parseNanoTime = exports.flattenResourceAttributes = exports.getAttributeValue = exports.findAttribute = exports.getAttributeStringValue = exports.TraceOrchestrator = exports.CompositeRegistry = exports.LocalRegistry = exports.RemoteRegistry = exports.OtlpTraceParser = exports.getWorkflowRootSpan = exports.getEventSpan = exports.getEventTemplateString = exports.isEventTemplate = exports.deriveEdgesFromSequence = exports.extractEventSpans = exports.setNestedValue = exports.getNestedValue = exports.computeAggregates = exports.hasEventMatching = exports.getRequiredEvents = exports.selectScenario = exports.ParsedTemplate = exports.parseTemplate = exports.renderEventTemplate = exports.renderWorkflow = exports.getConfigNameFromFilename = exports.isYamlFile = exports.parseYaml = exports.CanvasConverter = exports.resolveCanvasColor = exports.CANVAS_COLOR_PRESETS = exports.getOtelNodeIdentifier = exports.isOtelNode = exports.isOtelBoundaryNode = exports.isOtelResourceNode = exports.isOtelScopeNode = exports.isOtelSpanConventionNode = exports.isOtelEventNode = exports.isStandardCanvasNode = exports.hasPVExtension = exports.isGroupNode = exports.isLinkNode = exports.isFileNode = exports.isTextNode = exports.isAuxiliaryManifest = void 0;
14
+ exports.EventRecorderService = exports.SessionManager = exports.PathBasedEventProcessor = exports.analyzeCoverage = exports.createDashboardValidator = exports.DashboardValidator = exports.createExecutionValidator = exports.ExecutionValidator = exports.resolveEventSpanColor = exports.getSpanColor = exports.matchSpanPattern = exports.buildSpanColorMapFromCanvases = exports.buildSpanColorMap = exports.extractSpanConventions = exports.extractSpanConvention = exports.DEFAULT_SPAN_COLOR = exports.OtelEventPathsValidator = exports.NamespacePathIndex = exports.EventsCanvasValidator = exports.getAllScopeNames = exports.buildScopeColorMap = exports.normalizeScopes = exports.getScopeColor = exports.getScopeDefinition = exports.getScopeNames = exports.DRAFT_NODE_COLOR = exports.DEFAULT_SCOPE_COLOR = exports.validateScopeNamespaceNesting = exports.ScopePathIndex = exports.ScopesCanvasValidator = exports.buildStoryboardFileManifest = exports.buildWorkflowFileManifest = exports.buildCanvasFileManifest = exports.CanvasDiscovery = exports.SpanMatcher = exports.getScopeMatchSummary = exports.scopeHasMatches = exports.getScopeWithMostSpans = exports.getSpanCountForScope = exports.findScopeByName = exports.getUnmatchedScopes = exports.getPartialMatchedScopes = exports.getMatchedScopes = exports.getAllScopes = exports.getPrimaryScope = exports.getScopeFromUnmatchedSpan = exports.getScopeFromStoryboardMatch = exports.getScopeFromScenarioMatch = exports.groupSpansByTrace = exports.createInMemoryVersionRegistry = void 0;
15
+ exports.InMemoryFileSystemAdapter = exports.getAllNodeIds = exports.findNodesMatchingEventPattern = exports.resolveWorkflowNodeIds = exports.resolveScenarioNodeIds = exports.getNodeEventName = exports.buildEventNodeMap = exports.buildStoryboardContext = exports.LibraryDiscovery = exports.validateLibraryStructure = exports.LibraryLoader = void 0;
16
16
  // Import canvas utility functions to re-export (avoids export-from syntax that breaks with exports field)
17
17
  const canvas_1 = require("./types/canvas");
18
18
  Object.defineProperty(exports, "isTextNode", { enumerable: true, get: function () { return canvas_1.isTextNode; } });
@@ -30,6 +30,9 @@ Object.defineProperty(exports, "isOtelNode", { enumerable: true, get: function (
30
30
  Object.defineProperty(exports, "getOtelNodeIdentifier", { enumerable: true, get: function () { return canvas_1.getOtelNodeIdentifier; } });
31
31
  Object.defineProperty(exports, "CANVAS_COLOR_PRESETS", { enumerable: true, get: function () { return canvas_1.CANVAS_COLOR_PRESETS; } });
32
32
  Object.defineProperty(exports, "resolveCanvasColor", { enumerable: true, get: function () { return canvas_1.resolveCanvasColor; } });
33
+ // Auxiliary manifest type guard (browser-safe runtime helper)
34
+ var auxiliary_1 = require("./types/auxiliary");
35
+ Object.defineProperty(exports, "isAuxiliaryManifest", { enumerable: true, get: function () { return auxiliary_1.isAuxiliaryManifest; } });
33
36
  var CanvasConverter_1 = require("./utils/CanvasConverter");
34
37
  Object.defineProperty(exports, "CanvasConverter", { enumerable: true, get: function () { return CanvasConverter_1.CanvasConverter; } });
35
38
  // Export YAML parsing (browser-compatible)
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  * Validates that a .scopes.canvas file exists and properly documents
5
5
  * all instrumentation scopes declared in library.yaml.
6
6
  */
7
+ import type { FileSystemAdapter } from '@principal-ai/repository-abstraction';
7
8
  import type { ExtendedCanvas } from '../types/canvas';
8
9
  /**
9
10
  * Scopes canvas validation context
@@ -61,6 +62,8 @@ export interface ScopesCanvasValidationResult {
61
62
  * Validates scopes canvas files
62
63
  */
63
64
  export declare class ScopesCanvasValidator {
65
+ private fsAdapter;
66
+ constructor(fsAdapter: FileSystemAdapter);
64
67
  /**
65
68
  * Validate a scopes canvas against library.yaml owned-scopes
66
69
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ScopesCanvasValidator.d.ts","sourceRoot":"","sources":["../../src/scopes/ScopesCanvasValidator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAsD,MAAM,iBAAiB,CAAC;AAI1G;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,mCAAmC;IACnC,YAAY,CAAC,EAAE,cAAc,CAAC;IAE9B,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,qCAAqC;IACrC,WAAW,EAAE,MAAM,EAAE,CAAC;IAEtB,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;IAEf,qBAAqB;IACrB,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAE3B,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IAEb,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAEhB,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IAEf,oBAAoB;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,4CAA4C;IAC5C,KAAK,EAAE,OAAO,CAAC;IAEf,+BAA+B;IAC/B,UAAU,EAAE,qBAAqB,EAAE,CAAC;IAEpC,iCAAiC;IACjC,QAAQ,EAAE;QACR,2CAA2C;QAC3C,gBAAgB,EAAE,MAAM,CAAC;QACzB,kCAAkC;QAClC,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAC3B,iCAAiC;QACjC,aAAa,EAAE,MAAM,EAAE,CAAC;QACxB,+CAA+C;QAC/C,WAAW,EAAE,MAAM,EAAE,CAAC;KACvB,CAAC;CACH;AAED;;GAEG;AACH,qBAAa,qBAAqB;IAChC;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAgM7F;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAsBhC"}
1
+ {"version":3,"file":"ScopesCanvasValidator.d.ts","sourceRoot":"","sources":["../../src/scopes/ScopesCanvasValidator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,KAAK,EAAE,cAAc,EAAsD,MAAM,iBAAiB,CAAC;AAI1G;;GAEG;AACH,MAAM,WAAW,6BAA6B;IAC5C,mCAAmC;IACnC,YAAY,CAAC,EAAE,cAAc,CAAC;IAE9B,qCAAqC;IACrC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B,qCAAqC;IACrC,WAAW,EAAE,MAAM,EAAE,CAAC;IAEtB,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;IAEf,qBAAqB;IACrB,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAE3B,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IAEb,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAEhB,uBAAuB;IACvB,MAAM,EAAE,MAAM,CAAC;IAEf,oBAAoB;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B;IAC3C,4CAA4C;IAC5C,KAAK,EAAE,OAAO,CAAC;IAEf,+BAA+B;IAC/B,UAAU,EAAE,qBAAqB,EAAE,CAAC;IAEpC,iCAAiC;IACjC,QAAQ,EAAE;QACR,2CAA2C;QAC3C,gBAAgB,EAAE,MAAM,CAAC;QACzB,kCAAkC;QAClC,gBAAgB,EAAE,MAAM,EAAE,CAAC;QAC3B,iCAAiC;QACjC,aAAa,EAAE,MAAM,EAAE,CAAC;QACxB,+CAA+C;QAC/C,WAAW,EAAE,MAAM,EAAE,CAAC;KACvB,CAAC;CACH;AAED;;GAEG;AACH,qBAAa,qBAAqB;IACpB,OAAO,CAAC,SAAS;gBAAT,SAAS,EAAE,iBAAiB;IAEhD;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,6BAA6B,GAAG,OAAO,CAAC,4BAA4B,CAAC;IAgM7F;;OAEG;IACH,OAAO,CAAC,uBAAuB;CAsBhC"}
@@ -7,14 +7,15 @@
7
7
  */
8
8
  Object.defineProperty(exports, "__esModule", { value: true });
9
9
  exports.ScopesCanvasValidator = void 0;
10
- const fs_1 = require("fs");
11
- const path_1 = require("path");
12
10
  const canvas_1 = require("../types/canvas");
13
11
  const path_helpers_1 = require("../events/path-helpers");
14
12
  /**
15
13
  * Validates scopes canvas files
16
14
  */
17
15
  class ScopesCanvasValidator {
16
+ constructor(fsAdapter) {
17
+ this.fsAdapter = fsAdapter;
18
+ }
18
19
  /**
19
20
  * Validate a scopes canvas against library.yaml owned-scopes
20
21
  */
@@ -146,8 +147,8 @@ class ScopesCanvasValidator {
146
147
  for (const p of paths) {
147
148
  declaredPaths.push({ scope, nodeId, path: p });
148
149
  // Warn when a declared path does not exist relative to the repo root.
149
- const resolved = (0, path_1.resolve)(basePath, p);
150
- if (!(0, fs_1.existsSync)(resolved)) {
150
+ const resolved = this.fsAdapter.join(basePath, p);
151
+ if (!(await this.fsAdapter.exists(resolved))) {
151
152
  violations.push({
152
153
  ruleId: 'scopes-paths-missing',
153
154
  severity: 'warn',
@@ -1 +1 @@
1
- {"version":3,"file":"ScopesCanvasValidator.js","sourceRoot":"","sources":["../../src/scopes/ScopesCanvasValidator.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,2BAAgC;AAChC,+BAA+B;AAE/B,4CAAwE;AACxE,yDAAsD;AAoEtD;;GAEG;AACH,MAAa,qBAAqB;IAChC;;OAEG;IACH,KAAK,CAAC,QAAQ,CAAC,OAAsC;QACnD,MAAM,UAAU,GAA4B,EAAE,CAAC;QAC/C,MAAM,EAAE,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;QAE1E,+BAA+B;QAC/B,MAAM,gBAAgB,GAAa,EAAE,CAAC;QACtC,MAAM,aAAa,GAAa,EAAE,CAAC;QACnC,MAAM,WAAW,GAAa,EAAE,CAAC;QAEjC,8DAA8D;QAC9D,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE;YAC3C,UAAU,CAAC,IAAI,CAAC;gBACd,MAAM,EAAE,wBAAwB;gBAChC,QAAQ,EAAE,OAAO;gBACjB,IAAI,EAAE,gBAAgB,IAAI,6CAA6C;gBACvE,OAAO,EAAE,kEAAkE;gBAC3E,MAAM,EAAE,+DAA+D;gBACvE,UAAU,EAAE,oGAAoG;oBAC9G,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;oBAC3C,mEAAmE;aACtE,CAAC,CAAC;YAEH,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,UAAU;gBACV,QAAQ,EAAE;oBACR,gBAAgB,EAAE,WAAW,CAAC,MAAM;oBACpC,gBAAgB,EAAE,EAAE;oBACpB,aAAa,EAAE,CAAC,GAAG,WAAW,CAAC;oBAC/B,WAAW,EAAE,EAAE;iBAChB;aACF,CAAC;SACH;QAED,gDAAgD;QAChD,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;YAC5B,OAAO;gBACL,KAAK,EAAE,IAAI;gBACX,UAAU;gBACV,QAAQ,EAAE;oBACR,gBAAgB,EAAE,CAAC;oBACnB,gBAAgB,EAAE,EAAE;oBACpB,aAAa,EAAE,EAAE;oBACjB,WAAW,EAAE,EAAE;iBAChB;aACF,CAAC;SACH;QAED,mCAAmC;QACnC,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,CAAC,YAAa,CAAC,CAAC;QACjE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QAC/D,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC;QAE3C,oCAAoC;QACpC,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE;YAC/B,IAAI,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC7B,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC9B;iBAAM;gBACL,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aAC3B;SACF;QAED,6CAA6C;QAC7C,KAAK,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,YAAY,EAAE;YAC5C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;gBAC7B,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;aACzB;SACF;QAED,wBAAwB;QACxB,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5B,UAAU,CAAC,IAAI,CAAC;gBACd,MAAM,EAAE,0BAA0B;gBAClC,QAAQ,EAAE,OAAO;gBACjB,IAAI,EAAE,gBAAgB,IAAI,6CAA6C;gBACvE,OAAO,EAAE,4BAA4B,aAAa,CAAC,MAAM,6BAA6B;gBACtF,MAAM,EAAE,2DAA2D;gBACnE,UAAU,EAAE,uCAAuC;oBACjD,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,mDAAmD,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;aACrG,CAAC,CAAC;SACJ;QAED,2CAA2C;QAC3C,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,UAAU,CAAC,IAAI,CAAC;gBACd,MAAM,EAAE,4BAA4B;gBACpC,QAAQ,EAAE,MAAM;gBAChB,IAAI,EAAE,gBAAgB,IAAI,6CAA6C;gBACvE,OAAO,EAAE,0BAA0B,WAAW,CAAC,MAAM,4CAA4C;gBACjG,MAAM,EAAE,kEAAkE;gBAC1E,UAAU,EAAE,WAAW;oBACrB,yDAAyD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;oBACnF,gEAAgE;aACnE,CAAC,CAAC;SACJ;QAED,oEAAoE;QACpE,KAAK,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,YAAY,EAAE;YAClD,mDAAmD;YACnD,MAAM,aAAa,GAAG,IAAgC,CAAC;YACvD,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE;gBAC9B,UAAU,CAAC,IAAI,CAAC;oBACd,MAAM,EAAE,gCAAgC;oBACxC,QAAQ,EAAE,MAAM;oBAChB,IAAI,EAAE,gBAAgB,IAAI,6CAA6C;oBACvE,IAAI,EAAE,SAAS,MAAM,GAAG;oBACxB,OAAO,EAAE,eAAe,KAAK,4BAA4B;oBACzD,MAAM,EAAE,yDAAyD;oBACjE,UAAU,EAAE,2DAA2D;iBACxE,CAAC,CAAC;aACJ;SACF;QAED,2EAA2E;QAC3E,0EAA0E;QAC1E,MAAM,aAAa,GAA2D,EAAE,CAAC;QACjF,KAAK,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,YAAY,EAAE;YAClD,MAAM,aAAa,GAAG,IAAgC,CAAC;YACvD,MAAM,KAAK,GAAG,aAAa,CAAC,KAAK,CAAC;YAClC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAE3C,mEAAmE;YACnE,gEAAgE;YAChE,sEAAsE;YACtE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpB,UAAU,CAAC,IAAI,CAAC;oBACd,MAAM,EAAE,uBAAuB;oBAC/B,QAAQ,EAAE,MAAM;oBAChB,IAAI,EAAE,gBAAgB,IAAI,6CAA6C;oBACvE,IAAI,EAAE,SAAS,MAAM,SAAS;oBAC9B,OAAO,EAAE,UAAU,KAAK,cAAc,KAAK,CAAC,MAAM,QAAQ;oBAC1D,MAAM,EAAE,8JAA8J;oBACtK,UAAU,EAAE,sIAAsI;iBACnJ,CAAC,CAAC;aACJ;YAED,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE;gBACrB,aAAa,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;gBAE/C,sEAAsE;gBACtE,MAAM,QAAQ,GAAG,IAAA,cAAO,EAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;gBACtC,IAAI,CAAC,IAAA,eAAU,EAAC,QAAQ,CAAC,EAAE;oBACzB,UAAU,CAAC,IAAI,CAAC;wBACd,MAAM,EAAE,sBAAsB;wBAC9B,QAAQ,EAAE,MAAM;wBAChB,IAAI,EAAE,gBAAgB,IAAI,6CAA6C;wBACvE,IAAI,EAAE,SAAS,MAAM,SAAS;wBAC9B,OAAO,EAAE,SAAS,CAAC,wBAAwB,KAAK,kBAAkB;wBAClE,MAAM,EAAE,kFAAkF;wBAC1F,UAAU,EAAE,kGAAkG;qBAC/G,CAAC,CAAC;iBACJ;aACF;SACF;QAED,4EAA4E;QAC5E,4EAA4E;QAC5E,uBAAuB;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACjD,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC3B,MAAM,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;oBAAE,SAAS;gBAElC,MAAM,YAAY,GAAG,IAAA,2BAAY,EAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;gBAClD,IAAI,YAAY,KAAK,UAAU,EAAE;oBAC/B,UAAU,CAAC,IAAI,CAAC;wBACd,MAAM,EAAE,sBAAsB;wBAC9B,QAAQ,EAAE,OAAO;wBACjB,IAAI,EAAE,gBAAgB,IAAI,6CAA6C;wBACvE,OAAO,EAAE,iCAAiC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,IAAI,IAAI;wBACjG,MAAM,EAAE,8DAA8D;wBACtE,UAAU,EAAE,oOAAoO;qBACjP,CAAC,CAAC;iBACJ;aACF;SACF;QAED,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;QAE9D,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;YAC1B,UAAU;YACV,QAAQ,EAAE;gBACR,gBAAgB,EAAE,WAAW,CAAC,MAAM;gBACpC,gBAAgB;gBAChB,aAAa;gBACb,WAAW;aACZ;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,uBAAuB,CAC7B,MAAsB;QAEtB,MAAM,MAAM,GAAuE,EAAE,CAAC;QAEtF,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE;YACrC,gCAAgC;YAChC,IAAI,IAAA,wBAAkB,EAAC,IAAI,CAAC,EAAE;gBAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC;gBAC/B,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE;oBACtC,MAAM,CAAC,IAAI,CAAC;wBACV,KAAK;wBACL,MAAM,EAAE,IAAI,CAAC,EAAE;wBACf,IAAI,EAAE,IAA0B;qBACjC,CAAC,CAAC;iBACJ;aACF;YACD,qDAAqD;SACtD;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AA7ND,sDA6NC"}
1
+ {"version":3,"file":"ScopesCanvasValidator.js","sourceRoot":"","sources":["../../src/scopes/ScopesCanvasValidator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@principal-ai/principal-view-core",
3
- "version": "0.28.4",
3
+ "version": "0.28.6",
4
4
  "description": "Core logic and types for graph-based principal view framework",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -2,6 +2,7 @@ import { describe, expect, test } from 'bun:test';
2
2
  import { mkdtempSync, mkdirSync, writeFileSync } from 'fs';
3
3
  import { tmpdir } from 'os';
4
4
  import { join } from 'path';
5
+ import { NodeFileSystemAdapter } from '@principal-ai/repository-abstraction/node';
5
6
  import { AuxiliaryManifestValidator } from './AuxiliaryManifestValidator';
6
7
  import type { AuxiliaryManifest } from '../types/auxiliary';
7
8
 
@@ -16,15 +17,15 @@ function makeRepo(layout: string[]): string {
16
17
  }
17
18
 
18
19
  describe('AuxiliaryManifestValidator', () => {
19
- const validator = new AuxiliaryManifestValidator();
20
+ const validator = new AuxiliaryManifestValidator(new NodeFileSystemAdapter());
20
21
 
21
- test('no manifest is a no-op', () => {
22
- const result = validator.validate({ basePath: '/tmp' });
22
+ test('no manifest is a no-op', async () => {
23
+ const result = await validator.validate({ basePath: '/tmp' });
23
24
  expect(result.valid).toBe(true);
24
25
  expect(result.violations).toHaveLength(0);
25
26
  });
26
27
 
27
- test('passes for a clean manifest', () => {
28
+ test('passes for a clean manifest', async () => {
28
29
  const root = makeRepo(['docs/README.md', '.github/workflows/ci.yml']);
29
30
  const manifest: AuxiliaryManifest = {
30
31
  areas: [
@@ -32,12 +33,12 @@ describe('AuxiliaryManifestValidator', () => {
32
33
  { name: 'GitHub', paths: ['.github'], description: 'CI config' },
33
34
  ],
34
35
  };
35
- const result = validator.validate({ manifest, basePath: root });
36
+ const result = await validator.validate({ manifest, basePath: root });
36
37
  expect(result.valid).toBe(true);
37
38
  expect(result.violations).toHaveLength(0);
38
39
  });
39
40
 
40
- test('flags duplicate area names', () => {
41
+ test('flags duplicate area names', async () => {
41
42
  const root = makeRepo(['docs/README.md', 'misc/note.txt']);
42
43
  const manifest: AuxiliaryManifest = {
43
44
  areas: [
@@ -45,19 +46,19 @@ describe('AuxiliaryManifestValidator', () => {
45
46
  { name: 'Docs', paths: ['misc'], description: 'b' },
46
47
  ],
47
48
  };
48
- const result = validator.validate({ manifest, basePath: root });
49
+ const result = await validator.validate({ manifest, basePath: root });
49
50
  const dup = result.violations.find((v) => v.ruleId === 'auxiliary-area-name-duplicate');
50
51
  expect(dup).toBeDefined();
51
52
  expect(dup!.severity).toBe('error');
52
53
  expect(result.valid).toBe(false);
53
54
  });
54
55
 
55
- test('warns when a declared path does not exist', () => {
56
+ test('warns when a declared path does not exist', async () => {
56
57
  const root = makeRepo(['docs/README.md']);
57
58
  const manifest: AuxiliaryManifest = {
58
59
  areas: [{ name: 'Ghost', paths: ['nope'], description: 'missing' }],
59
60
  };
60
- const result = validator.validate({ manifest, basePath: root });
61
+ const result = await validator.validate({ manifest, basePath: root });
61
62
  const missing = result.violations.find((v) => v.ruleId === 'auxiliary-area-path-missing');
62
63
  expect(missing).toBeDefined();
63
64
  expect(missing!.severity).toBe('warn');
@@ -65,7 +66,7 @@ describe('AuxiliaryManifestValidator', () => {
65
66
  expect(result.valid).toBe(true);
66
67
  });
67
68
 
68
- test('flags overlap between two areas', () => {
69
+ test('flags overlap between two areas', async () => {
69
70
  const root = makeRepo(['docs/sub/file.md']);
70
71
  const manifest: AuxiliaryManifest = {
71
72
  areas: [
@@ -73,19 +74,19 @@ describe('AuxiliaryManifestValidator', () => {
73
74
  { name: 'B', paths: ['docs/sub'], description: 'b' },
74
75
  ],
75
76
  };
76
- const result = validator.validate({ manifest, basePath: root });
77
+ const result = await validator.validate({ manifest, basePath: root });
77
78
  const overlap = result.violations.find((v) => v.ruleId === 'auxiliary-area-paths-overlap');
78
79
  expect(overlap).toBeDefined();
79
80
  expect(overlap!.severity).toBe('error');
80
81
  expect(result.valid).toBe(false);
81
82
  });
82
83
 
83
- test('flags duplicate paths within a single area as self-overlap', () => {
84
+ test('flags duplicate paths within a single area as self-overlap', async () => {
84
85
  const root = makeRepo(['docs/file.md']);
85
86
  const manifest: AuxiliaryManifest = {
86
87
  areas: [{ name: 'A', paths: ['docs', 'docs'], description: 'a' }],
87
88
  };
88
- const result = validator.validate({ manifest, basePath: root });
89
+ const result = await validator.validate({ manifest, basePath: root });
89
90
  const self = result.violations.find((v) => v.ruleId === 'auxiliary-area-paths-self-overlap');
90
91
  expect(self).toBeDefined();
91
92
  });
@@ -11,8 +11,7 @@
11
11
  * checks for scopes/namespaces.
12
12
  */
13
13
 
14
- import { existsSync } from 'fs';
15
- import { resolve } from 'path';
14
+ import type { FileSystemAdapter } from '@principal-ai/repository-abstraction';
16
15
  import type { AuxiliaryManifest } from '../types/auxiliary';
17
16
  import { pathsOverlap } from '../events/path-helpers';
18
17
 
@@ -45,7 +44,9 @@ export interface AuxiliaryManifestValidationResult {
45
44
  const DEFAULT_MANIFEST_PATH = '.principal-views/auxiliary.manifest.json';
46
45
 
47
46
  export class AuxiliaryManifestValidator {
48
- validate(context: AuxiliaryManifestValidationContext): AuxiliaryManifestValidationResult {
47
+ constructor(private fsAdapter: FileSystemAdapter) {}
48
+
49
+ async validate(context: AuxiliaryManifestValidationContext): Promise<AuxiliaryManifestValidationResult> {
49
50
  const violations: AuxiliaryManifestViolation[] = [];
50
51
  const { manifest, basePath } = context;
51
52
  const file = context.manifestPath || DEFAULT_MANIFEST_PATH;
@@ -76,13 +77,15 @@ export class AuxiliaryManifestValidator {
76
77
 
77
78
  // Path existence + collect for overlap pass
78
79
  const declaredPaths: Array<{ areaName: string; areaIndex: number; pathIndex: number; path: string }> = [];
79
- areas.forEach((area, areaIdx) => {
80
+ for (let areaIdx = 0; areaIdx < areas.length; areaIdx++) {
81
+ const area = areas[areaIdx];
80
82
  const paths = area.paths || [];
81
- paths.forEach((p, pathIdx) => {
83
+ for (let pathIdx = 0; pathIdx < paths.length; pathIdx++) {
84
+ const p = paths[pathIdx];
82
85
  declaredPaths.push({ areaName: area.name, areaIndex: areaIdx, pathIndex: pathIdx, path: p });
83
86
 
84
- const resolved = resolve(basePath, p);
85
- if (!existsSync(resolved)) {
87
+ const resolved = this.fsAdapter.join(basePath, p);
88
+ if (!(await this.fsAdapter.exists(resolved))) {
86
89
  violations.push({
87
90
  ruleId: 'auxiliary-area-path-missing',
88
91
  severity: 'warn',
@@ -93,8 +96,8 @@ export class AuxiliaryManifestValidator {
93
96
  suggestion: 'Verify the path exists relative to the repository root, or remove it from the area declaration.',
94
97
  });
95
98
  }
96
- });
97
- });
99
+ }
100
+ }
98
101
 
99
102
  // Path overlap. Unlike scopes, areas have no dotted-name hierarchy, so
100
103
  // parent-child nesting between two areas is just as ambiguous as a flat
@@ -0,0 +1,170 @@
1
+ /**
2
+ * Browser-safety regression test.
3
+ *
4
+ * The package has two entry points:
5
+ * - `@principal-ai/principal-view-core` (src/index.ts) — must work in any
6
+ * environment, including browsers. It must not transitively import any
7
+ * Node.js-only built-in module.
8
+ * - `@principal-ai/principal-view-core/node` (src/node.ts) — Node-only.
9
+ *
10
+ * This test walks the import graph starting from src/index.ts and fails if
11
+ * any reachable source file pulls in a forbidden Node built-in. `import type`
12
+ * lines are erased at compile time and are ignored.
13
+ */
14
+
15
+ import { describe, expect, test } from 'bun:test';
16
+ import { readFileSync, statSync } from 'fs';
17
+ import { dirname, resolve } from 'path';
18
+
19
+ const ENTRY = resolve(import.meta.dir, 'index.ts');
20
+ const SRC_ROOT = resolve(import.meta.dir);
21
+
22
+ // Node built-ins that don't exist in the browser. `node:` prefix and
23
+ // submodules like `fs/promises` are matched separately.
24
+ const FORBIDDEN_BARE = new Set([
25
+ 'fs',
26
+ 'path',
27
+ 'os',
28
+ 'child_process',
29
+ 'crypto',
30
+ 'http',
31
+ 'https',
32
+ 'net',
33
+ 'tls',
34
+ 'stream',
35
+ 'zlib',
36
+ 'url',
37
+ 'worker_threads',
38
+ 'cluster',
39
+ 'dgram',
40
+ 'dns',
41
+ 'readline',
42
+ 'v8',
43
+ 'vm',
44
+ ]);
45
+
46
+ function isForbidden(spec: string): boolean {
47
+ if (spec.startsWith('node:')) return true;
48
+ const root = spec.split('/')[0];
49
+ return FORBIDDEN_BARE.has(root);
50
+ }
51
+
52
+ function resolveRelative(from: string, spec: string): string | null {
53
+ const base = resolve(dirname(from), spec);
54
+ const candidates = [
55
+ base,
56
+ `${base}.ts`,
57
+ `${base}.tsx`,
58
+ `${base}/index.ts`,
59
+ `${base}/index.tsx`,
60
+ ];
61
+ for (const c of candidates) {
62
+ try {
63
+ const s = statSync(c);
64
+ if (s.isFile()) return c;
65
+ } catch {
66
+ // not a file; keep trying
67
+ }
68
+ }
69
+ return null;
70
+ }
71
+
72
+ interface ImportRef {
73
+ spec: string;
74
+ typeOnly: boolean;
75
+ }
76
+
77
+ // Strip /* ... */ and // ... so commented-out imports don't trip the regex.
78
+ function stripComments(src: string): string {
79
+ return src
80
+ .replace(/\/\*[\s\S]*?\*\//g, '')
81
+ .replace(/(^|[^:])\/\/[^\n]*/g, '$1');
82
+ }
83
+
84
+ function extractImports(src: string): ImportRef[] {
85
+ const cleaned = stripComments(src);
86
+ const refs: ImportRef[] = [];
87
+
88
+ // import ... from 'spec' / import 'spec'
89
+ const importRe = /^\s*import\s+(type\s+)?(?:[^'"]*?from\s+)?['"]([^'"]+)['"]/gm;
90
+ let m: RegExpExecArray | null;
91
+ while ((m = importRe.exec(cleaned))) {
92
+ refs.push({ spec: m[2], typeOnly: Boolean(m[1]) });
93
+ }
94
+
95
+ // export ... from 'spec' (re-exports — runtime-relevant unless "export type")
96
+ const exportRe = /^\s*export\s+(type\s+)?(?:\*|\{[^}]*\})\s+from\s+['"]([^'"]+)['"]/gm;
97
+ while ((m = exportRe.exec(cleaned))) {
98
+ refs.push({ spec: m[2], typeOnly: Boolean(m[1]) });
99
+ }
100
+
101
+ return refs;
102
+ }
103
+
104
+ interface LeakReport {
105
+ chain: string[];
106
+ forbiddenSpec: string;
107
+ }
108
+
109
+ function findLeaks(entry: string): LeakReport[] {
110
+ const visited = new Set<string>();
111
+ const leaks: LeakReport[] = [];
112
+
113
+ function walk(file: string, chain: string[]): void {
114
+ if (visited.has(file)) return;
115
+ visited.add(file);
116
+
117
+ const rel = file.startsWith(SRC_ROOT) ? file.slice(SRC_ROOT.length + 1) : file;
118
+ const nextChain = [...chain, rel];
119
+
120
+ let src: string;
121
+ try {
122
+ src = readFileSync(file, 'utf-8');
123
+ } catch {
124
+ return;
125
+ }
126
+
127
+ for (const ref of extractImports(src)) {
128
+ if (ref.typeOnly) continue;
129
+
130
+ // Forbidden Node built-in?
131
+ if (isForbidden(ref.spec)) {
132
+ leaks.push({ chain: nextChain, forbiddenSpec: ref.spec });
133
+ continue;
134
+ }
135
+
136
+ // Relative import — recurse.
137
+ if (ref.spec.startsWith('.')) {
138
+ const resolved = resolveRelative(file, ref.spec);
139
+ if (resolved) walk(resolved, nextChain);
140
+ continue;
141
+ }
142
+
143
+ // External package — out of scope. We trust the package author to have
144
+ // shipped a browser-safe entry; if they didn't, that's a separate bug.
145
+ }
146
+ }
147
+
148
+ walk(entry, []);
149
+ return leaks;
150
+ }
151
+
152
+ describe('browser-safe entry (src/index.ts)', () => {
153
+ test('does not transitively import any Node.js built-in', () => {
154
+ const leaks = findLeaks(ENTRY);
155
+
156
+ if (leaks.length > 0) {
157
+ const lines = leaks.map((l) => {
158
+ const arrow = l.chain.join('\n → ');
159
+ return ` ✗ imports "${l.forbiddenSpec}" via:\n → ${arrow}`;
160
+ });
161
+ const msg =
162
+ `Found ${leaks.length} Node.js built-in import(s) reachable from src/index.ts.\n` +
163
+ `These must move to src/node.ts (or be replaced with a FileSystemAdapter):\n\n` +
164
+ lines.join('\n\n');
165
+ throw new Error(msg);
166
+ }
167
+
168
+ expect(leaks).toHaveLength(0);
169
+ });
170
+ });
@@ -2,6 +2,7 @@ import { describe, expect, test, beforeAll, afterAll } from 'bun:test';
2
2
  import { mkdtempSync, mkdirSync, rmSync } from 'fs';
3
3
  import { tmpdir } from 'os';
4
4
  import { join } from 'path';
5
+ import { NodeFileSystemAdapter } from '@principal-ai/repository-abstraction/node';
5
6
  import { EventsCanvasValidator } from './EventsCanvasValidator';
6
7
  import type { ExtendedCanvas } from '../types/canvas';
7
8
 
@@ -50,7 +51,7 @@ function canvas(nodes: any[]): ExtendedCanvas {
50
51
  }
51
52
 
52
53
  async function runValidator(nodes: any[]) {
53
- const validator = new EventsCanvasValidator();
54
+ const validator = new EventsCanvasValidator(new NodeFileSystemAdapter());
54
55
  return validator.validate({
55
56
  eventsCanvas: canvas(nodes),
56
57
  eventsCanvasPath: 'test.events.canvas',
@@ -5,9 +5,8 @@
5
5
  * and their events, with correct namespace extraction and node structure.
6
6
  */
7
7
 
8
+ import type { FileSystemAdapter } from '@principal-ai/repository-abstraction';
8
9
  import type { ExtendedCanvas, ExtendedCanvasNode } from '../types/canvas';
9
- import { existsSync } from 'fs';
10
- import { resolve } from 'path';
11
10
  import { pathsOverlap } from './path-helpers';
12
11
 
13
12
  /**
@@ -128,6 +127,8 @@ export interface EventsCanvasValidationResult {
128
127
  * Validates events canvas files
129
128
  */
130
129
  export class EventsCanvasValidator {
130
+ constructor(private fsAdapter: FileSystemAdapter) {}
131
+
131
132
  /**
132
133
  * Extract namespace from event name (all segments except last)
133
134
  *
@@ -376,8 +377,8 @@ export class EventsCanvasValidator {
376
377
  });
377
378
 
378
379
  // Warn when a declared path does not exist relative to the repo root.
379
- const resolved = resolve(basePath, p);
380
- if (!existsSync(resolved)) {
380
+ const resolved = this.fsAdapter.join(basePath, p);
381
+ if (!(await this.fsAdapter.exists(resolved))) {
381
382
  violations.push({
382
383
  ruleId: 'events-namespace-paths-missing',
383
384
  severity: 'warn',
package/src/index.ts CHANGED
@@ -53,8 +53,13 @@ export type {
53
53
  PathBasedEvent,
54
54
  JsonValue,
55
55
  JsonObject,
56
+ ProjectArea,
57
+ AuxiliaryManifest,
56
58
  } from './types';
57
59
 
60
+ // Auxiliary manifest type guard (browser-safe runtime helper)
61
+ export { isAuxiliaryManifest } from './types/auxiliary';
62
+
58
63
  // Export path-based configuration types (browser-safe)
59
64
  export type { PathBasedGraphConfiguration } from './types/path-based-config';
60
65
 
@@ -2,6 +2,7 @@ import { describe, expect, test } from 'bun:test';
2
2
  import { mkdtempSync, mkdirSync, writeFileSync, rmSync } from 'fs';
3
3
  import { join } from 'path';
4
4
  import { tmpdir } from 'os';
5
+ import { NodeFileSystemAdapter } from '@principal-ai/repository-abstraction/node';
5
6
  import { ScopesCanvasValidator } from './ScopesCanvasValidator';
6
7
  import type { ExtendedCanvas } from '../types/canvas';
7
8
 
@@ -46,7 +47,7 @@ function withTempRepo(layout: string[], fn: (root: string) => Promise<void>): Pr
46
47
  describe('ScopesCanvasValidator scope paths', () => {
47
48
  test('no paths declared → no path violations', async () => {
48
49
  const canvas = makeCanvas([makeScopeNode({ id: 's1', scope: 'a.b' })]);
49
- const v = new ScopesCanvasValidator();
50
+ const v = new ScopesCanvasValidator(new NodeFileSystemAdapter());
50
51
  const r = await v.validate({
51
52
  scopesCanvas: canvas,
52
53
  ownedScopes: ['a.b'],
@@ -64,7 +65,7 @@ describe('ScopesCanvasValidator scope paths', () => {
64
65
  paths: ['packages/a/src', 'packages/a/generated'],
65
66
  }),
66
67
  ]);
67
- const v = new ScopesCanvasValidator();
68
+ const v = new ScopesCanvasValidator(new NodeFileSystemAdapter());
68
69
  const r = await v.validate({ scopesCanvas: canvas, ownedScopes: ['a'], basePath: root });
69
70
  const w = r.violations.find(x => x.ruleId === 'scopes-paths-multiple');
70
71
  expect(w).toBeDefined();
@@ -77,7 +78,7 @@ describe('ScopesCanvasValidator scope paths', () => {
77
78
  const canvas = makeCanvas([
78
79
  makeScopeNode({ id: 's1', scope: 'a', paths: ['packages/a/missing'] }),
79
80
  ]);
80
- const v = new ScopesCanvasValidator();
81
+ const v = new ScopesCanvasValidator(new NodeFileSystemAdapter());
81
82
  const r = await v.validate({ scopesCanvas: canvas, ownedScopes: ['a'], basePath: root });
82
83
  const w = r.violations.find(x => x.ruleId === 'scopes-paths-missing');
83
84
  expect(w).toBeDefined();
@@ -91,7 +92,7 @@ describe('ScopesCanvasValidator scope paths', () => {
91
92
  makeScopeNode({ id: 's1', scope: 'a', paths: ['packages/shared/src'] }),
92
93
  makeScopeNode({ id: 's2', scope: 'b', paths: ['packages/shared/src'] }),
93
94
  ]);
94
- const v = new ScopesCanvasValidator();
95
+ const v = new ScopesCanvasValidator(new NodeFileSystemAdapter());
95
96
  const r = await v.validate({
96
97
  scopesCanvas: canvas,
97
98
  ownedScopes: ['a', 'b'],
@@ -114,7 +115,7 @@ describe('ScopesCanvasValidator scope paths', () => {
114
115
  paths: ['packages/core/src/validation'],
115
116
  }),
116
117
  ]);
117
- const v = new ScopesCanvasValidator();
118
+ const v = new ScopesCanvasValidator(new NodeFileSystemAdapter());
118
119
  const r = await v.validate({
119
120
  scopesCanvas: canvas,
120
121
  ownedScopes: ['principal-ai.core', 'principal-ai.core.validation'],
@@ -5,8 +5,7 @@
5
5
  * all instrumentation scopes declared in library.yaml.
6
6
  */
7
7
 
8
- import { existsSync } from 'fs';
9
- import { resolve } from 'path';
8
+ import type { FileSystemAdapter } from '@principal-ai/repository-abstraction';
10
9
  import type { ExtendedCanvas, ExtendedCanvasNode, OtelScopeNode, isOtelScopeNode } from '../types/canvas';
11
10
  import { isOtelScopeNode as checkOtelScopeNode } from '../types/canvas';
12
11
  import { pathsOverlap } from '../events/path-helpers';
@@ -81,6 +80,8 @@ export interface ScopesCanvasValidationResult {
81
80
  * Validates scopes canvas files
82
81
  */
83
82
  export class ScopesCanvasValidator {
83
+ constructor(private fsAdapter: FileSystemAdapter) {}
84
+
84
85
  /**
85
86
  * Validate a scopes canvas against library.yaml owned-scopes
86
87
  */
@@ -224,8 +225,8 @@ export class ScopesCanvasValidator {
224
225
  declaredPaths.push({ scope, nodeId, path: p });
225
226
 
226
227
  // Warn when a declared path does not exist relative to the repo root.
227
- const resolved = resolve(basePath, p);
228
- if (!existsSync(resolved)) {
228
+ const resolved = this.fsAdapter.join(basePath, p);
229
+ if (!(await this.fsAdapter.exists(resolved))) {
229
230
  violations.push({
230
231
  ruleId: 'scopes-paths-missing',
231
232
  severity: 'warn',