@happyvertical/smrt-scanner 0.51.32 → 0.51.33

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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Manifest completeness verification.
3
+ *
4
+ * Re-scans a package's `src/` with the same OXC scanner the build uses and
5
+ * asserts that every `@smrt()`-decorated object (and its collection) is present
6
+ * in the package's published `dist/manifest.json`. This is a publish-time guard:
7
+ * downstream schema migration is manifest-driven, so a stale manifest that omits
8
+ * an object means consumers can never create its table via `smrt db:migrate`.
9
+ *
10
+ * Root cause it guards against (issue #1483): `@happyvertical/smrt-jobs@0.27.41`
11
+ * shipped a `dist/manifest.json` generated before `SmrtWorker` existed. The
12
+ * source, exports, and `__smrt-register__` path were all correct, but the
13
+ * published manifest had only 4 of 6 objects, so `_smrt_workers` was never
14
+ * created and `TaskRunner.start()` threw on every consumer that upgraded.
15
+ *
16
+ * The check compares object-key SETS only. The downstream manifest-enrichment
17
+ * passes (schema/validation/agent generation) mutate object entries but never
18
+ * add or remove object keys, so the scanner + adapter object set is the source
19
+ * of truth for "which objects the published manifest must contain". The
20
+ * comparison is `expected ⊆ dist`: enrichment passes that add keys to `dist`
21
+ * (e.g. STI children) never trigger a false failure.
22
+ *
23
+ * Parse errors are handled before the set comparison: a syntactically broken
24
+ * source file drops its objects from `expected` AND `dist` symmetrically, which
25
+ * a naive `expected ⊆ dist` would wave through as `ok`. The scan's
26
+ * `severity:'error'` entries therefore short-circuit to a distinct `scan-error`
27
+ * status so a broken source can never masquerade as a complete manifest.
28
+ *
29
+ * @see https://github.com/happyvertical/smrt/issues/1483
30
+ */
31
+ export type VerifyManifestStatus = 'ok' | 'incomplete' | 'missing-manifest' | 'scan-error' | 'skipped';
32
+ export interface VerifyManifestCompletenessOptions {
33
+ /** Absolute or relative path to the package directory to verify. */
34
+ packageDir: string;
35
+ /** Source include globs (default mirrors the build). */
36
+ include?: string[];
37
+ /** Source exclude globs (default mirrors the build). */
38
+ exclude?: string[];
39
+ /** Package directory basenames to skip (default: framework infrastructure). */
40
+ skipPackages?: string[];
41
+ }
42
+ export interface VerifyManifestCompletenessResult {
43
+ status: VerifyManifestStatus;
44
+ packageName?: string;
45
+ manifestPath?: string;
46
+ /** Qualified object keys present in source but missing from the manifest. */
47
+ missing: string[];
48
+ /** Number of objects the source is expected to contribute. */
49
+ expectedCount: number;
50
+ /** Number of objects present in the published manifest. */
51
+ distCount: number;
52
+ /** Human-readable explanation for `skipped` / `missing-manifest`. */
53
+ reason?: string;
54
+ }
55
+ /**
56
+ * Verify that `dist/manifest.json` contains every `@smrt()` object declared in
57
+ * the package source. See module docs for the rationale and guarantees.
58
+ */
59
+ export declare function verifyManifestCompleteness(options: VerifyManifestCompletenessOptions): Promise<VerifyManifestCompletenessResult>;
60
+ //# sourceMappingURL=verify-completeness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-completeness.d.ts","sourceRoot":"","sources":["../src/verify-completeness.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AA4CH,MAAM,MAAM,oBAAoB,GAC5B,IAAI,GACJ,YAAY,GACZ,kBAAkB,GAClB,YAAY,GACZ,SAAS,CAAC;AAEd,MAAM,WAAW,iCAAiC;IAChD,oEAAoE;IACpE,UAAU,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,wDAAwD;IACxD,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,+EAA+E;IAC/E,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,gCAAgC;IAC/C,MAAM,EAAE,oBAAoB,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6EAA6E;IAC7E,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,8DAA8D;IAC9D,aAAa,EAAE,MAAM,CAAC;IACtB,2DAA2D;IAC3D,SAAS,EAAE,MAAM,CAAC;IAClB,qEAAqE;IACrE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAsCD;;;GAGG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,iCAAiC,GACzC,OAAO,CAAC,gCAAgC,CAAC,CA6I3C"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@happyvertical/smrt-scanner",
3
- "version": "0.51.32",
3
+ "version": "0.51.33",
4
4
  "description": "High-performance TypeScript scanner using OXC for SMRT manifest generation",
5
5
  "author": "HappyVertical",
6
6
  "type": "module",
@@ -27,9 +27,14 @@
27
27
  "./types": {
28
28
  "types": "./dist/types.d.ts",
29
29
  "import": "./dist/types.js"
30
+ },
31
+ "./knowledge": {
32
+ "types": "./dist/knowledge.d.ts",
33
+ "import": "./dist/knowledge.js"
30
34
  }
31
35
  },
32
36
  "dependencies": {
37
+ "@happyvertical/smrt-types": "0.51.33",
33
38
  "fast-glob": "3.3.3",
34
39
  "minimatch": "10.2.6",
35
40
  "oxc-parser": "^0.150.0",