@skillsmith/core 0.5.8 → 0.6.1

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.
Files changed (202) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/src/audit/exclusions.d.ts +67 -0
  4. package/dist/src/audit/exclusions.d.ts.map +1 -0
  5. package/dist/src/audit/exclusions.js +133 -0
  6. package/dist/src/audit/exclusions.js.map +1 -0
  7. package/dist/src/audit/exclusions.types.d.ts +45 -0
  8. package/dist/src/audit/exclusions.types.d.ts.map +1 -0
  9. package/dist/src/audit/exclusions.types.js +11 -0
  10. package/dist/src/audit/exclusions.types.js.map +1 -0
  11. package/dist/src/audit/index.d.ts +15 -0
  12. package/dist/src/audit/index.d.ts.map +1 -0
  13. package/dist/src/audit/index.js +14 -0
  14. package/dist/src/audit/index.js.map +1 -0
  15. package/dist/src/benchmarks/embeddingBenchmark.d.ts.map +1 -1
  16. package/dist/src/benchmarks/embeddingBenchmark.js +5 -2
  17. package/dist/src/benchmarks/embeddingBenchmark.js.map +1 -1
  18. package/dist/src/config/audit-mode.d.ts +71 -0
  19. package/dist/src/config/audit-mode.d.ts.map +1 -0
  20. package/dist/src/config/audit-mode.js +69 -0
  21. package/dist/src/config/audit-mode.js.map +1 -0
  22. package/dist/src/config/index.d.ts +13 -0
  23. package/dist/src/config/index.d.ts.map +1 -1
  24. package/dist/src/config/index.js +24 -0
  25. package/dist/src/config/index.js.map +1 -1
  26. package/dist/src/db/migration-runner.d.ts +9 -2
  27. package/dist/src/db/migration-runner.d.ts.map +1 -1
  28. package/dist/src/db/migration-runner.js +36 -3
  29. package/dist/src/db/migration-runner.js.map +1 -1
  30. package/dist/src/db/migration.d.ts.map +1 -1
  31. package/dist/src/db/migration.js +9 -1
  32. package/dist/src/db/migration.js.map +1 -1
  33. package/dist/src/db/migrations/v16-skill-source.d.ts +41 -0
  34. package/dist/src/db/migrations/v16-skill-source.d.ts.map +1 -0
  35. package/dist/src/db/migrations/v16-skill-source.js +87 -0
  36. package/dist/src/db/migrations/v16-skill-source.js.map +1 -0
  37. package/dist/src/db/migrations/v17-curated-trust-tier.d.ts +44 -0
  38. package/dist/src/db/migrations/v17-curated-trust-tier.d.ts.map +1 -0
  39. package/dist/src/db/migrations/v17-curated-trust-tier.js +89 -0
  40. package/dist/src/db/migrations/v17-curated-trust-tier.js.map +1 -0
  41. package/dist/src/db/schema-sql.d.ts +1 -1
  42. package/dist/src/db/schema-sql.d.ts.map +1 -1
  43. package/dist/src/db/schema-sql.js +2 -1
  44. package/dist/src/db/schema-sql.js.map +1 -1
  45. package/dist/src/db/schema.d.ts +9 -3
  46. package/dist/src/db/schema.d.ts.map +1 -1
  47. package/dist/src/db/schema.js +13 -2
  48. package/dist/src/db/schema.js.map +1 -1
  49. package/dist/src/embeddings/embedding-utils.d.ts +23 -0
  50. package/dist/src/embeddings/embedding-utils.d.ts.map +1 -1
  51. package/dist/src/embeddings/embedding-utils.js +39 -0
  52. package/dist/src/embeddings/embedding-utils.js.map +1 -1
  53. package/dist/src/embeddings/hnsw-search.d.ts +133 -0
  54. package/dist/src/embeddings/hnsw-search.d.ts.map +1 -0
  55. package/dist/src/embeddings/hnsw-search.js +387 -0
  56. package/dist/src/embeddings/hnsw-search.js.map +1 -0
  57. package/dist/src/embeddings/hnsw-store.d.ts +9 -3
  58. package/dist/src/embeddings/hnsw-store.d.ts.map +1 -1
  59. package/dist/src/embeddings/hnsw-store.js +17 -7
  60. package/dist/src/embeddings/hnsw-store.js.map +1 -1
  61. package/dist/src/embeddings/hnsw-store.types.d.ts +17 -4
  62. package/dist/src/embeddings/hnsw-store.types.d.ts.map +1 -1
  63. package/dist/src/embeddings/hnsw-store.types.js.map +1 -1
  64. package/dist/src/embeddings/index.d.ts +50 -4
  65. package/dist/src/embeddings/index.d.ts.map +1 -1
  66. package/dist/src/embeddings/index.js +166 -24
  67. package/dist/src/embeddings/index.js.map +1 -1
  68. package/dist/src/exports/services.d.ts +1 -1
  69. package/dist/src/exports/services.d.ts.map +1 -1
  70. package/dist/src/exports/services.js.map +1 -1
  71. package/dist/src/index.d.ts +4 -1
  72. package/dist/src/index.d.ts.map +1 -1
  73. package/dist/src/index.js +5 -1
  74. package/dist/src/index.js.map +1 -1
  75. package/dist/src/indexer/SkillParser.d.ts +7 -70
  76. package/dist/src/indexer/SkillParser.d.ts.map +1 -1
  77. package/dist/src/indexer/SkillParser.helpers.d.ts +13 -0
  78. package/dist/src/indexer/SkillParser.helpers.d.ts.map +1 -0
  79. package/dist/src/indexer/SkillParser.helpers.js +90 -0
  80. package/dist/src/indexer/SkillParser.helpers.js.map +1 -0
  81. package/dist/src/indexer/SkillParser.js +5 -82
  82. package/dist/src/indexer/SkillParser.js.map +1 -1
  83. package/dist/src/indexer/SkillParser.types.d.ts +78 -0
  84. package/dist/src/indexer/SkillParser.types.d.ts.map +1 -0
  85. package/dist/src/indexer/SkillParser.types.js +9 -0
  86. package/dist/src/indexer/SkillParser.types.js.map +1 -0
  87. package/dist/src/install/fan-out.d.ts +81 -0
  88. package/dist/src/install/fan-out.d.ts.map +1 -0
  89. package/dist/src/install/fan-out.js +236 -0
  90. package/dist/src/install/fan-out.js.map +1 -0
  91. package/dist/src/install/index.d.ts +16 -0
  92. package/dist/src/install/index.d.ts.map +1 -0
  93. package/dist/src/install/index.js +14 -0
  94. package/dist/src/install/index.js.map +1 -0
  95. package/dist/src/install/paths.d.ts +16 -0
  96. package/dist/src/install/paths.d.ts.map +1 -0
  97. package/dist/src/install/paths.js +56 -0
  98. package/dist/src/install/paths.js.map +1 -0
  99. package/dist/src/repositories/AdvisoryRepository.test.js +2 -2
  100. package/dist/src/repositories/AdvisoryRepository.test.js.map +1 -1
  101. package/dist/src/repositories/SkillRepository.d.ts.map +1 -1
  102. package/dist/src/repositories/SkillRepository.js +12 -4
  103. package/dist/src/repositories/SkillRepository.js.map +1 -1
  104. package/dist/src/search/hybrid.js +2 -2
  105. package/dist/src/search/hybrid.js.map +1 -1
  106. package/dist/src/security/pathValidation.d.ts +6 -1
  107. package/dist/src/security/pathValidation.d.ts.map +1 -1
  108. package/dist/src/security/pathValidation.js +6 -1
  109. package/dist/src/security/pathValidation.js.map +1 -1
  110. package/dist/src/services/skill-installation.errors.d.ts +53 -0
  111. package/dist/src/services/skill-installation.errors.d.ts.map +1 -0
  112. package/dist/src/services/skill-installation.errors.js +63 -0
  113. package/dist/src/services/skill-installation.errors.js.map +1 -0
  114. package/dist/src/services/skill-installation.service.d.ts.map +1 -1
  115. package/dist/src/services/skill-installation.service.js +33 -35
  116. package/dist/src/services/skill-installation.service.js.map +1 -1
  117. package/dist/src/services/skill-installation.types.d.ts +16 -0
  118. package/dist/src/services/skill-installation.types.d.ts.map +1 -1
  119. package/dist/src/services/skill-installation.types.js.map +1 -1
  120. package/dist/src/skills/index-local.d.ts +107 -0
  121. package/dist/src/skills/index-local.d.ts.map +1 -0
  122. package/dist/src/skills/index-local.js +208 -0
  123. package/dist/src/skills/index-local.js.map +1 -0
  124. package/dist/src/sync/SyncEngine.d.ts.map +1 -1
  125. package/dist/src/sync/SyncEngine.js +20 -3
  126. package/dist/src/sync/SyncEngine.js.map +1 -1
  127. package/dist/src/types/skill.d.ts +20 -5
  128. package/dist/src/types/skill.d.ts.map +1 -1
  129. package/dist/src/types/skill.js.map +1 -1
  130. package/dist/tests/EmbeddingService.test.js +1 -1
  131. package/dist/tests/EmbeddingService.test.js.map +1 -1
  132. package/dist/tests/SkillVersionRepository.test.js +2 -2
  133. package/dist/tests/SkillVersionRepository.test.js.map +1 -1
  134. package/dist/tests/db/migration.test.js +13 -5
  135. package/dist/tests/db/migration.test.js.map +1 -1
  136. package/dist/tests/embeddings/hnsw-bench-gate.test.d.ts +15 -0
  137. package/dist/tests/embeddings/hnsw-bench-gate.test.d.ts.map +1 -0
  138. package/dist/tests/embeddings/hnsw-bench-gate.test.js +117 -0
  139. package/dist/tests/embeddings/hnsw-bench-gate.test.js.map +1 -0
  140. package/dist/tests/embeddings/hnsw-integration.test.d.ts +14 -0
  141. package/dist/tests/embeddings/hnsw-integration.test.d.ts.map +1 -0
  142. package/dist/tests/embeddings/hnsw-integration.test.js +160 -0
  143. package/dist/tests/embeddings/hnsw-integration.test.js.map +1 -0
  144. package/dist/tests/embeddings/hnsw-vs-brute-force.bench.d.ts +15 -0
  145. package/dist/tests/embeddings/hnsw-vs-brute-force.bench.d.ts.map +1 -0
  146. package/dist/tests/embeddings/hnsw-vs-brute-force.bench.js +64 -0
  147. package/dist/tests/embeddings/hnsw-vs-brute-force.bench.js.map +1 -0
  148. package/dist/tests/embeddings/seed-bench.d.ts +15 -0
  149. package/dist/tests/embeddings/seed-bench.d.ts.map +1 -0
  150. package/dist/tests/embeddings/seed-bench.js +61 -0
  151. package/dist/tests/embeddings/seed-bench.js.map +1 -0
  152. package/dist/tests/helpers/database.d.ts +11 -2
  153. package/dist/tests/helpers/database.d.ts.map +1 -1
  154. package/dist/tests/helpers/database.js +23 -7
  155. package/dist/tests/helpers/database.js.map +1 -1
  156. package/dist/tests/install/fan-out.test.d.ts +2 -0
  157. package/dist/tests/install/fan-out.test.d.ts.map +1 -0
  158. package/dist/tests/install/fan-out.test.js +238 -0
  159. package/dist/tests/install/fan-out.test.js.map +1 -0
  160. package/dist/tests/install/paths.test.d.ts +2 -0
  161. package/dist/tests/install/paths.test.d.ts.map +1 -0
  162. package/dist/tests/install/paths.test.js +79 -0
  163. package/dist/tests/install/paths.test.js.map +1 -0
  164. package/dist/tests/repositories/CoInstallRepository.test.js +2 -2
  165. package/dist/tests/repositories/CoInstallRepository.test.js.map +1 -1
  166. package/dist/tests/repositories/SkillDependencyRepository.test.js +2 -2
  167. package/dist/tests/repositories/SkillDependencyRepository.test.js.map +1 -1
  168. package/dist/tests/schema.test.js +12 -0
  169. package/dist/tests/schema.test.js.map +1 -1
  170. package/dist/tests/skill-scanner/allowlist.test.js +27 -4
  171. package/dist/tests/skill-scanner/allowlist.test.js.map +1 -1
  172. package/dist/tests/unit/audit/exclusions.test.d.ts +7 -0
  173. package/dist/tests/unit/audit/exclusions.test.d.ts.map +1 -0
  174. package/dist/tests/unit/audit/exclusions.test.js +157 -0
  175. package/dist/tests/unit/audit/exclusions.test.js.map +1 -0
  176. package/dist/tests/unit/config/audit-mode.test.d.ts +11 -0
  177. package/dist/tests/unit/config/audit-mode.test.d.ts.map +1 -0
  178. package/dist/tests/unit/config/audit-mode.test.js +86 -0
  179. package/dist/tests/unit/config/audit-mode.test.js.map +1 -0
  180. package/dist/tests/unit/migrations/migration-v16.test.d.ts +11 -0
  181. package/dist/tests/unit/migrations/migration-v16.test.d.ts.map +1 -0
  182. package/dist/tests/unit/migrations/migration-v16.test.js +139 -0
  183. package/dist/tests/unit/migrations/migration-v16.test.js.map +1 -0
  184. package/dist/tests/unit/migrations/migration-v17.test.d.ts +16 -0
  185. package/dist/tests/unit/migrations/migration-v17.test.d.ts.map +1 -0
  186. package/dist/tests/unit/migrations/migration-v17.test.js +256 -0
  187. package/dist/tests/unit/migrations/migration-v17.test.js.map +1 -0
  188. package/dist/tests/unit/migrations/v10-dependencies.test.js +2 -2
  189. package/dist/tests/unit/migrations/v10-dependencies.test.js.map +1 -1
  190. package/dist/tests/unit/services/skill-installation-extended.test.js +1 -1
  191. package/dist/tests/unit/services/skill-installation-extended.test.js.map +1 -1
  192. package/dist/tests/unit/services/skill-installation.service.test.js +113 -1
  193. package/dist/tests/unit/services/skill-installation.service.test.js.map +1 -1
  194. package/dist/tests/unit/skills/index-local.test.d.ts +11 -0
  195. package/dist/tests/unit/skills/index-local.test.d.ts.map +1 -0
  196. package/dist/tests/unit/skills/index-local.test.js +88 -0
  197. package/dist/tests/unit/skills/index-local.test.js.map +1 -0
  198. package/dist/tests/unit/sync-engine.source-aware.test.d.ts +11 -0
  199. package/dist/tests/unit/sync-engine.source-aware.test.d.ts.map +1 -0
  200. package/dist/tests/unit/sync-engine.source-aware.test.js +147 -0
  201. package/dist/tests/unit/sync-engine.source-aware.test.js.map +1 -0
  202. package/package.json +35 -12
@@ -0,0 +1,107 @@
1
+ /**
2
+ * @fileoverview `indexLocalSkill` — pure core helper that registers a single
3
+ * SKILL.md file's metadata into the local manifest snapshot
4
+ * consumed by the namespace-audit collision detector
5
+ * (SMI-4587 Wave 1 PR #4 / NEW-E-2).
6
+ * @module @skillsmith/core/skills/index-local
7
+ *
8
+ * Extracted from `executeIndexLocal` in `@skillsmith/mcp-server/tools/index-local`
9
+ * so the audit's `bootstrapUnmanagedSkills` callback can wire a real
10
+ * implementation instead of the no-op stub. The MCP tool delegates to this
11
+ * helper and adds the MCP envelope (timing, formatted summaries) on top.
12
+ *
13
+ * Pure-ish contract:
14
+ * - Input: absolute path to a SKILL.md file (or its containing directory).
15
+ * - Output: deterministic `IndexLocalSkillResult` with frontmatter-derived
16
+ * metadata + a quality score. No global state mutated, no network IO.
17
+ * - Filesystem reads only (`fs.readFileSync` on the SKILL.md). Throws if the
18
+ * path resolves outside the caller's expected root — caller layers
19
+ * `path-traversal` checks; this helper trusts what it's given.
20
+ *
21
+ * Surface kept narrow on purpose: Wave 2/3/4 callers should NOT reach into
22
+ * core internals. Anything beyond `indexLocalSkill(absPath, opts?)` belongs
23
+ * in mcp-server's tool layer.
24
+ *
25
+ * @see SMI-4587 plan §466 (NEW-E-2 surface grounding).
26
+ */
27
+ /**
28
+ * Frontmatter shape parsed from `SKILL.md`. Matches the subset the local
29
+ * skill indexer relies on; extra keys are ignored.
30
+ */
31
+ export interface IndexLocalSkillFrontmatter {
32
+ name: string | null;
33
+ description: string | null;
34
+ author: string | null;
35
+ tags: string[];
36
+ version: string | null;
37
+ repository: string | null;
38
+ homepage: string | null;
39
+ compatibility: string[];
40
+ }
41
+ /**
42
+ * Deterministic result shape returned by {@link indexLocalSkill}. Used by:
43
+ * - mcp-server's `executeIndexLocal` tool (formatted into the response)
44
+ * - the audit `bootstrapUnmanagedSkills` callback (treated as success when
45
+ * no error is thrown)
46
+ * - frozen-fixture regression tests in this package.
47
+ */
48
+ export interface IndexLocalSkillResult {
49
+ /** Skill ID in `local/{name}` shape — matches LocalIndexer.id. */
50
+ id: string;
51
+ /** Skill name from frontmatter or the directory fallback. */
52
+ name: string;
53
+ /** Description from frontmatter (may be null when missing). */
54
+ description: string | null;
55
+ /** Author from frontmatter; defaults to `'local'` when absent. */
56
+ author: string;
57
+ /** Tags from frontmatter (empty array when missing). */
58
+ tags: string[];
59
+ /** Quality score 0..100 derived from frontmatter completeness. */
60
+ qualityScore: number;
61
+ /** Always `'local'` for this helper — local-only by definition. */
62
+ trustTier: 'local';
63
+ /** Always `'local'` for this helper. */
64
+ source: 'local';
65
+ /** Absolute path to the skill directory. */
66
+ path: string;
67
+ /** Whether `SKILL.md` was actually found at the resolved path. */
68
+ hasSkillMd: boolean;
69
+ /** ISO timestamp of last directory mtime (null when stat fails). */
70
+ lastModified: string | null;
71
+ /** Source repository URL from frontmatter (null when missing). */
72
+ repository: string | null;
73
+ /** Compatibility tags from frontmatter (undefined when none). */
74
+ compatibility?: string[];
75
+ }
76
+ /**
77
+ * Optional knobs for {@link indexLocalSkill}. Defaults wired so callers can
78
+ * pass just `(absPath)` in the common case.
79
+ */
80
+ export interface IndexLocalSkillOptions {
81
+ /**
82
+ * Override the SKILL.md filename when an alternate manifest layout is in
83
+ * use. Defaults to `'SKILL.md'`.
84
+ */
85
+ skillManifestName?: string;
86
+ /**
87
+ * Inject a frontmatter parser. Defaults to the bundled minimal parser. The
88
+ * MCP tool layer can pass `parseFrontmatter` from the existing
89
+ * `FrontmatterParser` to keep parity with the indexer.
90
+ */
91
+ parseFrontmatter?: (content: string) => IndexLocalSkillFrontmatter;
92
+ }
93
+ /**
94
+ * Index a single local skill given the absolute path to its `SKILL.md` file
95
+ * (or the directory that contains it).
96
+ *
97
+ * Pure side-effect-light: reads filesystem, does not write anywhere. Returns
98
+ * a deterministic `IndexLocalSkillResult`. Throws when the path doesn't
99
+ * resolve to an existing directory — the caller (audit bootstrap) translates
100
+ * thrown errors into typed warnings.
101
+ *
102
+ * Parity with `mcp-server/indexer/LocalIndexer.indexSkillDir` is intentional;
103
+ * the MCP tool will delegate here once this lands. The split is along a
104
+ * per-skill boundary (helper) vs. per-directory traversal (indexer).
105
+ */
106
+ export declare function indexLocalSkill(absPath: string, opts?: IndexLocalSkillOptions): IndexLocalSkillResult;
107
+ //# sourceMappingURL=index-local.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-local.d.ts","sourceRoot":"","sources":["../../../src/skills/index-local.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAKH;;;GAGG;AACH,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;IACnB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,kEAAkE;IAClE,EAAE,EAAE,MAAM,CAAA;IACV,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAA;IACZ,+DAA+D;IAC/D,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,kEAAkE;IAClE,MAAM,EAAE,MAAM,CAAA;IACd,wDAAwD;IACxD,IAAI,EAAE,MAAM,EAAE,CAAA;IACd,kEAAkE;IAClE,YAAY,EAAE,MAAM,CAAA;IACpB,mEAAmE;IACnE,SAAS,EAAE,OAAO,CAAA;IAClB,wCAAwC;IACxC,MAAM,EAAE,OAAO,CAAA;IACf,4CAA4C;IAC5C,IAAI,EAAE,MAAM,CAAA;IACZ,kEAAkE;IAClE,UAAU,EAAE,OAAO,CAAA;IACnB,oEAAoE;IACpE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,kEAAkE;IAClE,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,iEAAiE;IACjE,aAAa,CAAC,EAAE,MAAM,EAAE,CAAA;CACzB;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,0BAA0B,CAAA;CACnE;AAYD;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,sBAA2B,GAChC,qBAAqB,CA2CvB"}
@@ -0,0 +1,208 @@
1
+ /**
2
+ * @fileoverview `indexLocalSkill` — pure core helper that registers a single
3
+ * SKILL.md file's metadata into the local manifest snapshot
4
+ * consumed by the namespace-audit collision detector
5
+ * (SMI-4587 Wave 1 PR #4 / NEW-E-2).
6
+ * @module @skillsmith/core/skills/index-local
7
+ *
8
+ * Extracted from `executeIndexLocal` in `@skillsmith/mcp-server/tools/index-local`
9
+ * so the audit's `bootstrapUnmanagedSkills` callback can wire a real
10
+ * implementation instead of the no-op stub. The MCP tool delegates to this
11
+ * helper and adds the MCP envelope (timing, formatted summaries) on top.
12
+ *
13
+ * Pure-ish contract:
14
+ * - Input: absolute path to a SKILL.md file (or its containing directory).
15
+ * - Output: deterministic `IndexLocalSkillResult` with frontmatter-derived
16
+ * metadata + a quality score. No global state mutated, no network IO.
17
+ * - Filesystem reads only (`fs.readFileSync` on the SKILL.md). Throws if the
18
+ * path resolves outside the caller's expected root — caller layers
19
+ * `path-traversal` checks; this helper trusts what it's given.
20
+ *
21
+ * Surface kept narrow on purpose: Wave 2/3/4 callers should NOT reach into
22
+ * core internals. Anything beyond `indexLocalSkill(absPath, opts?)` belongs
23
+ * in mcp-server's tool layer.
24
+ *
25
+ * @see SMI-4587 plan §466 (NEW-E-2 surface grounding).
26
+ */
27
+ import * as fs from 'node:fs';
28
+ import * as path from 'node:path';
29
+ const QUALITY_WEIGHTS = {
30
+ hasSkillMd: 20,
31
+ hasName: 10,
32
+ hasDescription: 20,
33
+ hasTags: 15,
34
+ hasAuthor: 5,
35
+ descriptionLength: 15,
36
+ tagCount: 15,
37
+ };
38
+ /**
39
+ * Index a single local skill given the absolute path to its `SKILL.md` file
40
+ * (or the directory that contains it).
41
+ *
42
+ * Pure side-effect-light: reads filesystem, does not write anywhere. Returns
43
+ * a deterministic `IndexLocalSkillResult`. Throws when the path doesn't
44
+ * resolve to an existing directory — the caller (audit bootstrap) translates
45
+ * thrown errors into typed warnings.
46
+ *
47
+ * Parity with `mcp-server/indexer/LocalIndexer.indexSkillDir` is intentional;
48
+ * the MCP tool will delegate here once this lands. The split is along a
49
+ * per-skill boundary (helper) vs. per-directory traversal (indexer).
50
+ */
51
+ export function indexLocalSkill(absPath, opts = {}) {
52
+ const skillManifestName = opts.skillManifestName ?? 'SKILL.md';
53
+ const parse = opts.parseFrontmatter ?? defaultParseFrontmatter;
54
+ const { skillDir, skillMdPath, dirName } = resolvePaths(absPath, skillManifestName);
55
+ let hasSkillMd = false;
56
+ let content = '';
57
+ let lastModified = null;
58
+ try {
59
+ const stats = fs.statSync(skillDir);
60
+ lastModified = stats.mtime.toISOString();
61
+ }
62
+ catch (err) {
63
+ throw new Error(`indexLocalSkill: cannot stat ${skillDir}: ${err instanceof Error ? err.message : String(err)}`);
64
+ }
65
+ if (fs.existsSync(skillMdPath)) {
66
+ hasSkillMd = true;
67
+ content = fs.readFileSync(skillMdPath, 'utf-8');
68
+ }
69
+ const frontmatter = parse(content);
70
+ const name = frontmatter.name || dirName;
71
+ const qualityScore = calculateQualityScore(frontmatter, hasSkillMd);
72
+ return {
73
+ id: `local/${name}`,
74
+ name,
75
+ description: frontmatter.description,
76
+ author: frontmatter.author || 'local',
77
+ tags: frontmatter.tags,
78
+ qualityScore,
79
+ trustTier: 'local',
80
+ source: 'local',
81
+ path: skillDir,
82
+ hasSkillMd,
83
+ lastModified,
84
+ repository: frontmatter.repository,
85
+ compatibility: frontmatter.compatibility.length > 0 ? frontmatter.compatibility : undefined,
86
+ };
87
+ }
88
+ /**
89
+ * Resolve a caller-supplied path into a normalized `{ skillDir, skillMdPath,
90
+ * dirName }` triple. Accepts either the SKILL.md file itself (the audit
91
+ * inventory shape) or the parent directory (LocalIndexer's per-entry shape).
92
+ */
93
+ function resolvePaths(absPath, skillManifestName) {
94
+ // Audit inventory always passes the SKILL.md absolute path; the MCP tool
95
+ // path may pass a directory. Normalize both.
96
+ const looksLikeManifest = path.basename(absPath) === skillManifestName;
97
+ const skillDir = looksLikeManifest ? path.dirname(absPath) : absPath;
98
+ const skillMdPath = path.join(skillDir, skillManifestName);
99
+ const dirName = path.basename(skillDir);
100
+ return { skillDir, skillMdPath, dirName };
101
+ }
102
+ /**
103
+ * Quality score 0..100. Mirrors the weights used by `LocalIndexer` so the
104
+ * MCP tool's response stays unchanged after the refactor.
105
+ */
106
+ function calculateQualityScore(frontmatter, hasSkillMd) {
107
+ let score = 0;
108
+ if (hasSkillMd)
109
+ score += QUALITY_WEIGHTS.hasSkillMd;
110
+ if (frontmatter.name)
111
+ score += QUALITY_WEIGHTS.hasName;
112
+ if (frontmatter.description) {
113
+ score += QUALITY_WEIGHTS.hasDescription;
114
+ const descLength = Math.min(frontmatter.description.length, 200);
115
+ score += Math.round((descLength / 200) * QUALITY_WEIGHTS.descriptionLength);
116
+ }
117
+ if (frontmatter.tags.length > 0) {
118
+ score += QUALITY_WEIGHTS.hasTags;
119
+ const tagBonus = Math.min(frontmatter.tags.length, 5) / 5;
120
+ score += Math.round(tagBonus * QUALITY_WEIGHTS.tagCount);
121
+ }
122
+ if (frontmatter.author)
123
+ score += QUALITY_WEIGHTS.hasAuthor;
124
+ return Math.min(score, 100);
125
+ }
126
+ /**
127
+ * Minimal YAML frontmatter parser scoped to `SKILL.md` keys. The MCP tool
128
+ * layer overrides this with the existing `FrontmatterParser.parseFrontmatter`
129
+ * so behavior stays identical to the LocalIndexer path.
130
+ */
131
+ function defaultParseFrontmatter(content) {
132
+ const result = {
133
+ name: null,
134
+ description: null,
135
+ author: null,
136
+ tags: [],
137
+ version: null,
138
+ repository: null,
139
+ homepage: null,
140
+ compatibility: [],
141
+ };
142
+ if (!content.startsWith('---'))
143
+ return result;
144
+ const closingMatch = content.match(/\n---(\r?\n|$)/);
145
+ if (!closingMatch || closingMatch.index === undefined)
146
+ return result;
147
+ const frontmatter = content.substring(3, closingMatch.index).trim();
148
+ for (const rawLine of frontmatter.split('\n')) {
149
+ const line = rawLine.trim();
150
+ if (!line || line.startsWith('#'))
151
+ continue;
152
+ const sep = line.indexOf(':');
153
+ if (sep === -1)
154
+ continue;
155
+ const key = line.slice(0, sep).trim();
156
+ const value = line.slice(sep + 1).trim();
157
+ assignKey(result, key, value);
158
+ }
159
+ return result;
160
+ }
161
+ function assignKey(target, key, value) {
162
+ const cleaned = stripQuotes(value);
163
+ switch (key) {
164
+ case 'name':
165
+ target.name = cleaned || null;
166
+ break;
167
+ case 'description':
168
+ target.description = cleaned || null;
169
+ break;
170
+ case 'author':
171
+ target.author = cleaned || null;
172
+ break;
173
+ case 'version':
174
+ target.version = cleaned || null;
175
+ break;
176
+ case 'repository':
177
+ target.repository = cleaned || null;
178
+ break;
179
+ case 'homepage':
180
+ target.homepage = cleaned || null;
181
+ break;
182
+ case 'tags':
183
+ target.tags = parseInlineList(cleaned);
184
+ break;
185
+ case 'compatibility':
186
+ target.compatibility = parseInlineList(cleaned);
187
+ break;
188
+ default:
189
+ break;
190
+ }
191
+ }
192
+ function stripQuotes(s) {
193
+ if ((s.startsWith('"') && s.endsWith('"')) || (s.startsWith("'") && s.endsWith("'"))) {
194
+ return s.slice(1, -1);
195
+ }
196
+ return s;
197
+ }
198
+ function parseInlineList(value) {
199
+ if (!value)
200
+ return [];
201
+ // Inline list `[a, b, c]` or `a, b, c`
202
+ const trimmed = value.replace(/^\[/, '').replace(/\]$/, '');
203
+ return trimmed
204
+ .split(',')
205
+ .map((t) => stripQuotes(t.trim()))
206
+ .filter((t) => t.length > 0);
207
+ }
208
+ //# sourceMappingURL=index-local.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-local.js","sourceRoot":"","sources":["../../../src/skills/index-local.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"SyncEngine.d.ts","sourceRoot":"","sources":["../../../src/sync/SyncEngine.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAmB,MAAM,kBAAkB,CAAA;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AACzE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAA;AACnF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAA;AACrF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAA;AACvF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAA;AAa/E;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,0CAA0C;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,uDAAuD;IACvD,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,wBAAwB;IACxB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAA;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,YAAY,GAAG,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAA;IACzE,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,OAAO,CAAA;CAChB;AAWD;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,gBAAgB,CAAwB;IAChD,OAAO,CAAC,YAAY,CAA2B;gBAG7C,SAAS,EAAE,mBAAmB,EAC9B,SAAS,EAAE,eAAe,EAC1B,cAAc,EAAE,oBAAoB,EACpC,eAAe,EAAE,qBAAqB,EACtC,gBAAgB,EAAE,sBAAsB,EACxC,YAAY,CAAC,EAAE,kBAAkB,GAAG,IAAI;IAU1C;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAQtB;;OAEG;IACG,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAiP1D;;OAEG;YACW,YAAY;IAkE1B;;OAEG;IACH,SAAS,IAAI;QACX,MAAM,EAAE,UAAU,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAA;QACrD,OAAO,EAAE,UAAU,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,CAAC,CAAA;QAC/D,SAAS,EAAE,OAAO,CAAA;QAClB,KAAK,EAAE,OAAO,CAAA;KACf;CAQF"}
1
+ {"version":3,"file":"SyncEngine.d.ts","sourceRoot":"","sources":["../../../src/sync/SyncEngine.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAmB,MAAM,kBAAkB,CAAA;AAC5E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAA;AACzE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAA;AACnF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAA;AACrF,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAA;AACvF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAA;AAa/E;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,0CAA0C;IAC1C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,uDAAuD;IACvD,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,wBAAwB;IACxB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,KAAK,IAAI,CAAA;CAC9C;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,YAAY,GAAG,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAA;IACzE,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAA;IAChB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,eAAe,EAAE,MAAM,CAAA;IACvB,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,EAAE,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,OAAO,CAAA;CAChB;AAWD;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,SAAS,CAAiB;IAClC,OAAO,CAAC,cAAc,CAAsB;IAC5C,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,gBAAgB,CAAwB;IAChD,OAAO,CAAC,YAAY,CAA2B;gBAG7C,SAAS,EAAE,mBAAmB,EAC9B,SAAS,EAAE,eAAe,EAC1B,cAAc,EAAE,oBAAoB,EACpC,eAAe,EAAE,qBAAqB,EACtC,gBAAgB,EAAE,sBAAsB,EACxC,YAAY,CAAC,EAAE,kBAAkB,GAAG,IAAI;IAU1C;;;;;;OAMG;IACH,OAAO,CAAC,cAAc;IAQtB;;OAEG;IACG,IAAI,CAAC,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC;IAwP1D;;OAEG;YACW,YAAY;IA4E1B;;OAEG;IACH,SAAS,IAAI;QACX,MAAM,EAAE,UAAU,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC,CAAA;QACrD,OAAO,EAAE,UAAU,CAAC,qBAAqB,CAAC,mBAAmB,CAAC,CAAC,CAAA;QAC/D,SAAS,EAAE,OAAO,CAAA;QAClB,KAAK,EAAE,OAAO,CAAA;KACf;CAQF"}
@@ -187,17 +187,25 @@ export class SyncEngine {
187
187
  skillsUnchanged = stats.unchanged;
188
188
  }
189
189
  else if (dryRun) {
190
- // In dry run, count what would be added/updated
190
+ // In dry run, count what would be added/updated.
191
+ // SMI-4665: rows where `source === 'local'` are reported as unchanged
192
+ // because the live path will skip them — keeps the dry-run summary
193
+ // honest about what `sync --force` would actually do.
191
194
  for (const skill of skillsToProcess) {
192
195
  const existing = this.skillRepo.findById(skill.id);
193
196
  if (existing) {
194
- skillsUpdated++;
197
+ if (existing.source === 'local') {
198
+ skillsUnchanged++;
199
+ }
200
+ else {
201
+ skillsUpdated++;
202
+ }
195
203
  }
196
204
  else {
197
205
  skillsAdded++;
198
206
  }
199
207
  }
200
- skillsUnchanged = allSkills.length - skillsToProcess.length;
208
+ skillsUnchanged += allSkills.length - skillsToProcess.length;
201
209
  }
202
210
  else {
203
211
  skillsUnchanged = allSkills.length;
@@ -276,6 +284,15 @@ export class SyncEngine {
276
284
  const skill = skills[i];
277
285
  const existing = this.skillRepo.findById(skill.id);
278
286
  if (existing) {
287
+ // SMI-4665: never overwrite a row that was imported from the local
288
+ // filesystem. The author iterates on a SKILL.md on disk; a registry
289
+ // sync (especially `sync --force`) must not silently replace it.
290
+ // Counts toward `unchanged` to keep the result tally honest.
291
+ if (existing.source === 'local') {
292
+ unchanged++;
293
+ onProgress?.(i + 1);
294
+ continue;
295
+ }
279
296
  // Check if actually changed
280
297
  if (existing.updatedAt !== skill.updated_at) {
281
298
  this.skillRepo.update(skill.id, {
@@ -1 +1 @@
1
- {"version":3,"file":"SyncEngine.js","sourceRoot":"","sources":["../../../src/sync/SyncEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SyncEngine.js","sourceRoot":"","sources":["../../../src/sync/SyncEngine.ts"],"names":[],"mappings":"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"}
@@ -4,11 +4,12 @@
4
4
  import type { DependencyDeclaration } from './dependencies.js';
5
5
  /**
6
6
  * SMI-1809: Added 'local' for local skills from ~/.claude/skills/
7
- *
8
- * NOTE: 'local' is a client-only tier for skills discovered on disk.
9
- * It is NOT stored in the database the skills table CHECK constraint
10
- * only allows: verified, curated, community, experimental, unknown.
11
- * Never pass 'local' to database upsert operations.
7
+ * SMI-4665: 'local' is now a first-class DB-backed tier — the skills.trust_tier
8
+ * CHECK constraint allows 'local' (migration v16) so filesystem-imported skills
9
+ * surface distinctly in search rather than being conflated with 'unknown'.
10
+ * SMI-2381 / SMI-4917: 'curated' (third-party publishers manually opted into the
11
+ * registry) is a first-class DB-backed tier the skills.trust_tier CHECK
12
+ * constraint allows 'curated' (migration v17).
12
13
  */
13
14
  export type TrustTier = 'verified' | 'curated' | 'community' | 'experimental' | 'unknown' | 'local';
14
15
  /**
@@ -20,6 +21,12 @@ export type SkillRole = 'code-quality' | 'testing' | 'documentation' | 'workflow
20
21
  * Valid skill roles array for validation
21
22
  */
22
23
  export declare const SKILL_ROLES: readonly SkillRole[];
24
+ /**
25
+ * SMI-4665: Provenance marker for a skill row.
26
+ * - `'registry'` — synced from the live Skillsmith registry (default for existing rows).
27
+ * - `'local'` — imported from disk via `skillsmith import-local`. Sync ignores these.
28
+ */
29
+ export type SkillSource = 'registry' | 'local';
23
30
  export interface Skill {
24
31
  id: string;
25
32
  name: string;
@@ -40,6 +47,12 @@ export interface Skill {
40
47
  compatibility?: string[];
41
48
  /** SMI-3135: Structured dependency declaration */
42
49
  dependencies?: DependencyDeclaration;
50
+ /**
51
+ * SMI-4665: Provenance — `'registry'` (default) or `'local'` (filesystem import).
52
+ * Optional on the type because many fixture/builder call sites predate the column;
53
+ * `SkillRepository.rowToSkill()` always populates it from the DB.
54
+ */
55
+ source?: SkillSource;
43
56
  createdAt: string;
44
57
  updatedAt: string;
45
58
  /** SHA-256 hex of the most recently recorded content proxy (optional, populated by SkillVersionRepository) */
@@ -65,6 +78,8 @@ export interface SkillCreateInput {
65
78
  securityPassed?: boolean | null;
66
79
  /** SMI-2760: Flat array of compatible IDE/LLM/platform slugs */
67
80
  compatibility?: string[];
81
+ /** SMI-4665: Provenance — defaults to `'registry'` when omitted. */
82
+ source?: SkillSource;
68
83
  }
69
84
  export interface SkillUpdateInput {
70
85
  name?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../../../src/types/skill.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../../../src/types/skill.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../../src/types/skill.ts"],"names":[],"mappings":"AAAA;;GAEG;AA0BH;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAyB;IAC/C,cAAc;IACd,SAAS;IACT,eAAe;IACf,UAAU;IACV,UAAU;IACV,qBAAqB;CACb,CAAA"}
1
+ {"version":3,"file":"skill.js","sourceRoot":"","sources":["../../../src/types/skill.ts"],"names":[],"mappings":"AAAA;;GAEG;AA2BH;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAyB;IAC/C,cAAc;IACd,SAAS;IACT,eAAe;IACf,UAAU;IACV,UAAU;IACV,qBAAqB;CACb,CAAA"}
@@ -199,7 +199,7 @@ describe('EmbeddingService', () => {
199
199
  }
200
200
  // Query for git-related
201
201
  const queryEmbedding = await service.embed('git version control');
202
- const similar = service.findSimilar(queryEmbedding, 2);
202
+ const similar = await service.findSimilar(queryEmbedding, 2);
203
203
  expect(similar.length).toBe(2);
204
204
  // Git-related skills should have higher scores
205
205
  expect(similar.every((s) => s.score > 0)).toBe(true);
@@ -1 +1 @@
1
- {"version":3,"file":"EmbeddingService.test.js","sourceRoot":"","sources":["../../tests/EmbeddingService.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EmbeddingService.test.js","sourceRoot":"","sources":["../../tests/EmbeddingService.test.ts"],"names":[],"mappings":"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"}
@@ -9,8 +9,8 @@ import { SkillVersionRepository } from '../src/repositories/SkillVersionReposito
9
9
  describe('SkillVersionRepository', () => {
10
10
  let db;
11
11
  let repo;
12
- beforeEach(() => {
13
- db = createTestDatabase();
12
+ beforeEach(async () => {
13
+ db = await createTestDatabase();
14
14
  repo = new SkillVersionRepository(db);
15
15
  });
16
16
  afterEach(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"SkillVersionRepository.test.js","sourceRoot":"","sources":["../../tests/SkillVersionRepository.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SkillVersionRepository.test.js","sourceRoot":"","sources":["../../tests/SkillVersionRepository.test.ts"],"names":[],"mappings":"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"}