@skillsmith/core 0.4.15 → 0.4.17

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 (221) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/README.md +57 -2
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/src/analysis/DependencyMerger.d.ts +39 -0
  5. package/dist/src/analysis/DependencyMerger.d.ts.map +1 -0
  6. package/dist/src/analysis/DependencyMerger.js +191 -0
  7. package/dist/src/analysis/DependencyMerger.js.map +1 -0
  8. package/dist/src/analysis/DependencyMerger.test.d.ts +2 -0
  9. package/dist/src/analysis/DependencyMerger.test.d.ts.map +1 -0
  10. package/dist/src/analysis/DependencyMerger.test.js +258 -0
  11. package/dist/src/analysis/DependencyMerger.test.js.map +1 -0
  12. package/dist/src/analysis/McpReferenceExtractor.d.ts +42 -0
  13. package/dist/src/analysis/McpReferenceExtractor.d.ts.map +1 -0
  14. package/dist/src/analysis/McpReferenceExtractor.js +92 -0
  15. package/dist/src/analysis/McpReferenceExtractor.js.map +1 -0
  16. package/dist/src/analysis/McpReferenceExtractor.test.d.ts +2 -0
  17. package/dist/src/analysis/McpReferenceExtractor.test.d.ts.map +1 -0
  18. package/dist/src/analysis/McpReferenceExtractor.test.js +262 -0
  19. package/dist/src/analysis/McpReferenceExtractor.test.js.map +1 -0
  20. package/dist/src/api/client.d.ts +2 -0
  21. package/dist/src/api/client.d.ts.map +1 -1
  22. package/dist/src/api/client.js.map +1 -1
  23. package/dist/src/db/drivers/sqljsDriver.d.ts.map +1 -1
  24. package/dist/src/db/drivers/sqljsDriver.js +4 -8
  25. package/dist/src/db/drivers/sqljsDriver.js.map +1 -1
  26. package/dist/src/db/migrations/v10-dependencies.d.ts +18 -0
  27. package/dist/src/db/migrations/v10-dependencies.d.ts.map +1 -0
  28. package/dist/src/db/migrations/v10-dependencies.js +50 -0
  29. package/dist/src/db/migrations/v10-dependencies.js.map +1 -0
  30. package/dist/src/db/migrations/v2-phase5-columns.d.ts +7 -0
  31. package/dist/src/db/migrations/v2-phase5-columns.d.ts.map +1 -0
  32. package/dist/src/db/migrations/v2-phase5-columns.js +16 -0
  33. package/dist/src/db/migrations/v2-phase5-columns.js.map +1 -0
  34. package/dist/src/db/migrations/v3-sync-tables.d.ts +6 -0
  35. package/dist/src/db/migrations/v3-sync-tables.d.ts.map +1 -0
  36. package/dist/src/db/migrations/v3-sync-tables.js +41 -0
  37. package/dist/src/db/migrations/v3-sync-tables.js.map +1 -0
  38. package/dist/src/db/migrations/v4-security-columns.d.ts +7 -0
  39. package/dist/src/db/migrations/v4-security-columns.d.ts.map +1 -0
  40. package/dist/src/db/migrations/v4-security-columns.js +17 -0
  41. package/dist/src/db/migrations/v4-security-columns.js.map +1 -0
  42. package/dist/src/db/schema.d.ts +2 -2
  43. package/dist/src/db/schema.d.ts.map +1 -1
  44. package/dist/src/db/schema.js +20 -58
  45. package/dist/src/db/schema.js.map +1 -1
  46. package/dist/src/embeddings/hnsw-store.d.ts +1 -1
  47. package/dist/src/embeddings/hnsw-store.d.ts.map +1 -1
  48. package/dist/src/embeddings/hnsw-store.js +4 -34
  49. package/dist/src/embeddings/hnsw-store.js.map +1 -1
  50. package/dist/src/embeddings/hnsw-store.types.d.ts +18 -0
  51. package/dist/src/embeddings/hnsw-store.types.d.ts.map +1 -1
  52. package/dist/src/embeddings/hnsw-store.types.js.map +1 -1
  53. package/dist/src/exports/repositories.d.ts +1 -0
  54. package/dist/src/exports/repositories.d.ts.map +1 -1
  55. package/dist/src/exports/repositories.js +4 -0
  56. package/dist/src/exports/repositories.js.map +1 -1
  57. package/dist/src/exports/services.d.ts +5 -0
  58. package/dist/src/exports/services.d.ts.map +1 -1
  59. package/dist/src/exports/services.js +11 -0
  60. package/dist/src/exports/services.js.map +1 -1
  61. package/dist/src/exports/types.d.ts +1 -0
  62. package/dist/src/exports/types.d.ts.map +1 -1
  63. package/dist/src/exports/types.js.map +1 -1
  64. package/dist/src/index.d.ts +1 -1
  65. package/dist/src/index.d.ts.map +1 -1
  66. package/dist/src/index.js +1 -1
  67. package/dist/src/index.js.map +1 -1
  68. package/dist/src/indexer/GitHubIndexer.d.ts +3 -1
  69. package/dist/src/indexer/GitHubIndexer.d.ts.map +1 -1
  70. package/dist/src/indexer/GitHubIndexer.js.map +1 -1
  71. package/dist/src/indexer/SkillParser.d.ts +20 -9
  72. package/dist/src/indexer/SkillParser.d.ts.map +1 -1
  73. package/dist/src/indexer/SkillParser.js +17 -10
  74. package/dist/src/indexer/SkillParser.js.map +1 -1
  75. package/dist/src/learning/PatternStore.d.ts.map +1 -1
  76. package/dist/src/learning/PatternStore.js +2 -9
  77. package/dist/src/learning/PatternStore.js.map +1 -1
  78. package/dist/src/repositories/IndexerRepository.d.ts.map +1 -1
  79. package/dist/src/repositories/IndexerRepository.js +5 -1
  80. package/dist/src/repositories/IndexerRepository.js.map +1 -1
  81. package/dist/src/repositories/SkillDependencyRepository.d.ts +73 -0
  82. package/dist/src/repositories/SkillDependencyRepository.d.ts.map +1 -0
  83. package/dist/src/repositories/SkillDependencyRepository.js +199 -0
  84. package/dist/src/repositories/SkillDependencyRepository.js.map +1 -0
  85. package/dist/src/routing/SONARouter.d.ts.map +1 -1
  86. package/dist/src/routing/SONARouter.js +4 -15
  87. package/dist/src/routing/SONARouter.js.map +1 -1
  88. package/dist/src/scripts/__tests__/scan-imported-skills.test.js +5 -0
  89. package/dist/src/scripts/__tests__/scan-imported-skills.test.js.map +1 -1
  90. package/dist/src/security/scanner/SecurityScanner.d.ts +4 -2
  91. package/dist/src/security/scanner/SecurityScanner.d.ts.map +1 -1
  92. package/dist/src/security/scanner/SecurityScanner.helpers.d.ts +24 -2
  93. package/dist/src/security/scanner/SecurityScanner.helpers.d.ts.map +1 -1
  94. package/dist/src/security/scanner/SecurityScanner.helpers.js +99 -3
  95. package/dist/src/security/scanner/SecurityScanner.helpers.js.map +1 -1
  96. package/dist/src/security/scanner/SecurityScanner.js +29 -90
  97. package/dist/src/security/scanner/SecurityScanner.js.map +1 -1
  98. package/dist/src/security/scanner/SecurityScanner.ssrf.d.ts +15 -0
  99. package/dist/src/security/scanner/SecurityScanner.ssrf.d.ts.map +1 -0
  100. package/dist/src/security/scanner/SecurityScanner.ssrf.js +76 -0
  101. package/dist/src/security/scanner/SecurityScanner.ssrf.js.map +1 -0
  102. package/dist/src/security/scanner/index.d.ts +1 -1
  103. package/dist/src/security/scanner/index.d.ts.map +1 -1
  104. package/dist/src/security/scanner/index.js +1 -1
  105. package/dist/src/security/scanner/index.js.map +1 -1
  106. package/dist/src/security/scanner/patterns.d.ts +6 -0
  107. package/dist/src/security/scanner/patterns.d.ts.map +1 -1
  108. package/dist/src/security/scanner/patterns.js +32 -0
  109. package/dist/src/security/scanner/patterns.js.map +1 -1
  110. package/dist/src/security/scanner/types.d.ts +2 -1
  111. package/dist/src/security/scanner/types.d.ts.map +1 -1
  112. package/dist/src/security/scanner/weights.d.ts.map +1 -1
  113. package/dist/src/security/scanner/weights.js +1 -0
  114. package/dist/src/security/scanner/weights.js.map +1 -1
  115. package/dist/src/services/skill-installation.helpers.d.ts +62 -0
  116. package/dist/src/services/skill-installation.helpers.d.ts.map +1 -0
  117. package/dist/src/services/skill-installation.helpers.js +335 -0
  118. package/dist/src/services/skill-installation.helpers.js.map +1 -0
  119. package/dist/src/services/skill-installation.service.d.ts +45 -0
  120. package/dist/src/services/skill-installation.service.d.ts.map +1 -0
  121. package/dist/src/services/skill-installation.service.js +383 -0
  122. package/dist/src/services/skill-installation.service.js.map +1 -0
  123. package/dist/src/services/skill-installation.types.d.ts +144 -0
  124. package/dist/src/services/skill-installation.types.d.ts.map +1 -0
  125. package/dist/src/services/skill-installation.types.js +38 -0
  126. package/dist/src/services/skill-installation.types.js.map +1 -0
  127. package/dist/src/services/skill-manifest.d.ts +20 -0
  128. package/dist/src/services/skill-manifest.d.ts.map +1 -0
  129. package/dist/src/services/skill-manifest.js +84 -0
  130. package/dist/src/services/skill-manifest.js.map +1 -0
  131. package/dist/src/session/SessionManager.helpers.d.ts +1 -27
  132. package/dist/src/session/SessionManager.helpers.d.ts.map +1 -1
  133. package/dist/src/session/SessionManager.helpers.js +0 -64
  134. package/dist/src/session/SessionManager.helpers.js.map +1 -1
  135. package/dist/src/session/SessionManager.memory.d.ts +12 -11
  136. package/dist/src/session/SessionManager.memory.d.ts.map +1 -1
  137. package/dist/src/session/SessionManager.memory.js +23 -115
  138. package/dist/src/session/SessionManager.memory.js.map +1 -1
  139. package/dist/src/session/SessionManager.types.d.ts +0 -37
  140. package/dist/src/session/SessionManager.types.d.ts.map +1 -1
  141. package/dist/src/session/SessionManager.types.js.map +1 -1
  142. package/dist/src/session/SessionRecovery.js +4 -4
  143. package/dist/src/session/SessionRecovery.js.map +1 -1
  144. package/dist/src/sources/SourceIndexer.d.ts +3 -1
  145. package/dist/src/sources/SourceIndexer.d.ts.map +1 -1
  146. package/dist/src/sources/SourceIndexer.js.map +1 -1
  147. package/dist/src/testing/MultiLLMProvider.d.ts.map +1 -1
  148. package/dist/src/testing/MultiLLMProvider.js +5 -19
  149. package/dist/src/testing/MultiLLMProvider.js.map +1 -1
  150. package/dist/src/types/dependencies.d.ts +85 -0
  151. package/dist/src/types/dependencies.d.ts.map +1 -0
  152. package/dist/src/types/dependencies.js +11 -0
  153. package/dist/src/types/dependencies.js.map +1 -0
  154. package/dist/src/types/skill.d.ts +3 -0
  155. package/dist/src/types/skill.d.ts.map +1 -1
  156. package/dist/src/types/skill.js.map +1 -1
  157. package/dist/src/types.d.ts +2 -0
  158. package/dist/src/types.d.ts.map +1 -1
  159. package/dist/tests/DailyIndexPipeline.test.js +3 -3
  160. package/dist/tests/DailyIndexPipeline.test.js.map +1 -1
  161. package/dist/tests/GitHubIndexer.test.js +4 -2
  162. package/dist/tests/GitHubIndexer.test.js.map +1 -1
  163. package/dist/tests/billing/StripeClient.test.d.ts +18 -0
  164. package/dist/tests/billing/StripeClient.test.d.ts.map +1 -0
  165. package/dist/tests/billing/StripeClient.test.js +566 -0
  166. package/dist/tests/billing/StripeClient.test.js.map +1 -0
  167. package/dist/tests/billing/StripeWebhookHandler.test.d.ts +16 -0
  168. package/dist/tests/billing/StripeWebhookHandler.test.d.ts.map +1 -0
  169. package/dist/tests/billing/StripeWebhookHandler.test.js +240 -0
  170. package/dist/tests/billing/StripeWebhookHandler.test.js.map +1 -0
  171. package/dist/tests/billing/stripe-helpers.test.d.ts +7 -0
  172. package/dist/tests/billing/stripe-helpers.test.d.ts.map +1 -0
  173. package/dist/tests/billing/stripe-helpers.test.js +91 -0
  174. package/dist/tests/billing/stripe-helpers.test.js.map +1 -0
  175. package/dist/tests/billing/webhook-handlers.test.d.ts +16 -0
  176. package/dist/tests/billing/webhook-handlers.test.d.ts.map +1 -0
  177. package/dist/tests/billing/webhook-handlers.test.js +519 -0
  178. package/dist/tests/billing/webhook-handlers.test.js.map +1 -0
  179. package/dist/tests/db/migration.test.d.ts +11 -0
  180. package/dist/tests/db/migration.test.d.ts.map +1 -0
  181. package/dist/tests/db/migration.test.js +265 -0
  182. package/dist/tests/db/migration.test.js.map +1 -0
  183. package/dist/tests/edge-cases/EdgeCases.test.js +4 -1
  184. package/dist/tests/edge-cases/EdgeCases.test.js.map +1 -1
  185. package/dist/tests/repositories/SkillDependencyRepository.test.d.ts +10 -0
  186. package/dist/tests/repositories/SkillDependencyRepository.test.d.ts.map +1 -0
  187. package/dist/tests/repositories/SkillDependencyRepository.test.js +336 -0
  188. package/dist/tests/repositories/SkillDependencyRepository.test.js.map +1 -0
  189. package/dist/tests/security/ContinuousSecurity.test.js +2 -2
  190. package/dist/tests/security/ContinuousSecurity.test.js.map +1 -1
  191. package/dist/tests/security.test.js +200 -0
  192. package/dist/tests/security.test.js.map +1 -1
  193. package/dist/tests/session/SessionManager.helpers.test.js +1 -9
  194. package/dist/tests/session/SessionManager.helpers.test.js.map +1 -1
  195. package/dist/tests/session/SessionManager.memory.test.d.ts +3 -4
  196. package/dist/tests/session/SessionManager.memory.test.d.ts.map +1 -1
  197. package/dist/tests/session/SessionManager.memory.test.js +41 -123
  198. package/dist/tests/session/SessionManager.memory.test.js.map +1 -1
  199. package/dist/tests/sources.test.js +1 -1
  200. package/dist/tests/sources.test.js.map +1 -1
  201. package/dist/tests/sync/BackgroundSyncService.test.d.ts +13 -0
  202. package/dist/tests/sync/BackgroundSyncService.test.d.ts.map +1 -0
  203. package/dist/tests/sync/BackgroundSyncService.test.js +259 -0
  204. package/dist/tests/sync/BackgroundSyncService.test.js.map +1 -0
  205. package/dist/tests/testkit.d.ts +14 -0
  206. package/dist/tests/testkit.d.ts.map +1 -0
  207. package/dist/tests/testkit.js +14 -0
  208. package/dist/tests/testkit.js.map +1 -0
  209. package/dist/tests/unit/migrations/v10-dependencies.test.d.ts +6 -0
  210. package/dist/tests/unit/migrations/v10-dependencies.test.d.ts.map +1 -0
  211. package/dist/tests/unit/migrations/v10-dependencies.test.js +166 -0
  212. package/dist/tests/unit/migrations/v10-dependencies.test.js.map +1 -0
  213. package/dist/tests/unit/services/skill-installation.service.test.d.ts +8 -0
  214. package/dist/tests/unit/services/skill-installation.service.test.d.ts.map +1 -0
  215. package/dist/tests/unit/services/skill-installation.service.test.js +732 -0
  216. package/dist/tests/unit/services/skill-installation.service.test.js.map +1 -0
  217. package/package.json +19 -7
  218. package/dist/vitest.config.d.ts +0 -3
  219. package/dist/vitest.config.d.ts.map +0 -1
  220. package/dist/vitest.config.js +0 -13
  221. package/dist/vitest.config.js.map +0 -1
@@ -0,0 +1,265 @@
1
+ /**
2
+ * SMI-3416: Database Migration Utility Tests
3
+ *
4
+ * Tests for migration.ts:
5
+ * - checkSchemaCompatibility: version detection and compatibility
6
+ * - ensureSchemaCompatibility: auto-upgrade/warning/error
7
+ * - mergeSkillDatabases: three-way skill merge with strategies
8
+ * - getSyncStatus / updateSyncStatus / recordSyncRun / getSyncHistory
9
+ */
10
+ import { describe, it, expect, afterEach } from 'vitest';
11
+ import { createDatabase, closeDatabase, getSchemaVersion, SCHEMA_VERSION, } from '../../src/db/schema.js';
12
+ import { checkSchemaCompatibility, ensureSchemaCompatibility, mergeSkillDatabases, getSyncStatus, recordSyncRun, getSyncHistory, } from '../../src/db/migration.js';
13
+ // ============================================================================
14
+ // Test helpers
15
+ // ============================================================================
16
+ const testDatabases = [];
17
+ function createTestDb() {
18
+ const db = createDatabase(':memory:');
19
+ // Add columns that migrations v2+ would add (createDatabase stamps SCHEMA_VERSION
20
+ // but uses base DDL which doesn't include ALTER TABLE columns)
21
+ try {
22
+ db.exec('ALTER TABLE skills ADD COLUMN source TEXT');
23
+ }
24
+ catch {
25
+ // Column may already exist
26
+ }
27
+ try {
28
+ db.exec('ALTER TABLE skills ADD COLUMN stars INTEGER');
29
+ }
30
+ catch {
31
+ // Column may already exist
32
+ }
33
+ // Ensure sync tables exist (migration v3)
34
+ db.exec(`
35
+ CREATE TABLE IF NOT EXISTS sync_config (
36
+ id TEXT PRIMARY KEY DEFAULT 'default',
37
+ last_sync_at TEXT,
38
+ next_sync_at TEXT,
39
+ last_sync_count INTEGER DEFAULT 0,
40
+ last_sync_error TEXT,
41
+ updated_at TEXT DEFAULT (datetime('now'))
42
+ );
43
+ INSERT OR IGNORE INTO sync_config (id) VALUES ('default');
44
+ CREATE TABLE IF NOT EXISTS sync_history (
45
+ id TEXT PRIMARY KEY,
46
+ started_at TEXT NOT NULL,
47
+ completed_at TEXT,
48
+ status TEXT NOT NULL CHECK (status IN ('running', 'success', 'failed', 'partial')),
49
+ skills_added INTEGER DEFAULT 0,
50
+ skills_updated INTEGER DEFAULT 0,
51
+ skills_unchanged INTEGER DEFAULT 0,
52
+ error_message TEXT,
53
+ duration_ms INTEGER
54
+ );
55
+ `);
56
+ testDatabases.push(db);
57
+ return db;
58
+ }
59
+ function insertSkill(db, id, overrides) {
60
+ db.prepare(`INSERT INTO skills (id, name, description, author, repo_url, quality_score,
61
+ trust_tier, tags, created_at, updated_at, source, stars)
62
+ VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`).run(id, overrides?.name ?? `skill-${id}`, 'Test skill', 'test-author', `https://github.com/test/${id}`, 0.8, overrides?.trust_tier ?? 'community', overrides?.tags ?? '["test"]', '2026-01-01T00:00:00Z', overrides?.updated_at ?? '2026-01-01T00:00:00Z', 'github', 10);
63
+ }
64
+ afterEach(() => {
65
+ for (const db of testDatabases) {
66
+ try {
67
+ closeDatabase(db);
68
+ }
69
+ catch {
70
+ // ignore
71
+ }
72
+ }
73
+ testDatabases.length = 0;
74
+ });
75
+ // ============================================================================
76
+ // checkSchemaCompatibility
77
+ // ============================================================================
78
+ describe('checkSchemaCompatibility', () => {
79
+ it('should return compatible + none when schema is current', () => {
80
+ const db = createTestDb();
81
+ const result = checkSchemaCompatibility(db);
82
+ expect(result.isCompatible).toBe(true);
83
+ expect(result.action).toBe('none');
84
+ expect(result.currentVersion).toBe(SCHEMA_VERSION);
85
+ });
86
+ it('should return compatible + upgrade when schema is older', () => {
87
+ const db = createTestDb();
88
+ // Manually downgrade schema version
89
+ db.prepare('UPDATE schema_version SET version = ?').run(SCHEMA_VERSION - 1);
90
+ const result = checkSchemaCompatibility(db);
91
+ expect(result.isCompatible).toBe(true);
92
+ expect(result.action).toBe('upgrade');
93
+ expect(result.currentVersion).toBe(SCHEMA_VERSION - 1);
94
+ expect(result.expectedVersion).toBe(SCHEMA_VERSION);
95
+ });
96
+ it('should return downgrade_warning when schema is newer (no breaking changes)', () => {
97
+ const db = createTestDb();
98
+ // Manually bump schema version beyond current
99
+ db.prepare('UPDATE schema_version SET version = ?').run(SCHEMA_VERSION + 1);
100
+ const result = checkSchemaCompatibility(db);
101
+ expect(result.currentVersion).toBe(SCHEMA_VERSION + 1);
102
+ // Could be downgrade_warning or incompatible depending on migration content
103
+ expect(['downgrade_warning', 'incompatible']).toContain(result.action);
104
+ });
105
+ });
106
+ // ============================================================================
107
+ // ensureSchemaCompatibility
108
+ // ============================================================================
109
+ describe('ensureSchemaCompatibility', () => {
110
+ it('should do nothing when schema is current', () => {
111
+ const db = createTestDb();
112
+ expect(() => ensureSchemaCompatibility(db)).not.toThrow();
113
+ expect(getSchemaVersion(db)).toBe(SCHEMA_VERSION);
114
+ });
115
+ it('should throw for incompatible schema', () => {
116
+ const db = createTestDb();
117
+ // Set to a very high version that likely has breaking migrations
118
+ db.prepare('UPDATE schema_version SET version = ?').run(9999);
119
+ // This may or may not throw depending on migration content
120
+ // At minimum, it should not crash
121
+ try {
122
+ ensureSchemaCompatibility(db);
123
+ }
124
+ catch (e) {
125
+ expect(e.message).toContain('incompatible');
126
+ }
127
+ });
128
+ });
129
+ // ============================================================================
130
+ // mergeSkillDatabases
131
+ // ============================================================================
132
+ describe('mergeSkillDatabases', () => {
133
+ it('should add new skills from source', () => {
134
+ const target = createTestDb();
135
+ const source = createTestDb();
136
+ insertSkill(source, 'skill-1');
137
+ insertSkill(source, 'skill-2');
138
+ const result = mergeSkillDatabases(target, source);
139
+ expect(result.skillsAdded).toBe(2);
140
+ expect(result.skillsUpdated).toBe(0);
141
+ expect(result.conflicts).toHaveLength(0);
142
+ });
143
+ it('should handle keep_newer strategy (source newer)', () => {
144
+ const target = createTestDb();
145
+ const source = createTestDb();
146
+ insertSkill(target, 'skill-1', { updated_at: '2026-01-01T00:00:00Z' });
147
+ insertSkill(source, 'skill-1', { updated_at: '2026-03-01T00:00:00Z' });
148
+ const result = mergeSkillDatabases(target, source, { strategy: 'keep_newer' });
149
+ expect(result.skillsUpdated).toBe(1);
150
+ expect(result.conflicts).toHaveLength(1);
151
+ expect(result.conflicts[0].resolution).toBe('updated');
152
+ });
153
+ it('should handle keep_newer strategy (target newer)', () => {
154
+ const target = createTestDb();
155
+ const source = createTestDb();
156
+ insertSkill(target, 'skill-1', { updated_at: '2026-03-01T00:00:00Z' });
157
+ insertSkill(source, 'skill-1', { updated_at: '2026-01-01T00:00:00Z' });
158
+ const result = mergeSkillDatabases(target, source, { strategy: 'keep_newer' });
159
+ expect(result.skillsSkipped).toBe(1);
160
+ expect(result.conflicts[0].resolution).toBe('kept_target');
161
+ });
162
+ it('should handle keep_target strategy', () => {
163
+ const target = createTestDb();
164
+ const source = createTestDb();
165
+ insertSkill(target, 'skill-1');
166
+ insertSkill(source, 'skill-1', { name: 'updated-name' });
167
+ const result = mergeSkillDatabases(target, source, { strategy: 'keep_target' });
168
+ expect(result.skillsSkipped).toBe(1);
169
+ });
170
+ it('should handle keep_source strategy', () => {
171
+ const target = createTestDb();
172
+ const source = createTestDb();
173
+ insertSkill(target, 'skill-1');
174
+ insertSkill(source, 'skill-1', { name: 'source-name' });
175
+ const result = mergeSkillDatabases(target, source, { strategy: 'keep_source' });
176
+ expect(result.skillsUpdated).toBe(1);
177
+ });
178
+ it('should handle merge_fields strategy', () => {
179
+ const target = createTestDb();
180
+ const source = createTestDb();
181
+ insertSkill(target, 'skill-1', { name: 'target-name', trust_tier: 'unknown' });
182
+ insertSkill(source, 'skill-1', { name: '', trust_tier: 'verified' });
183
+ const result = mergeSkillDatabases(target, source, { strategy: 'merge_fields' });
184
+ expect(result.skillsUpdated).toBe(1);
185
+ });
186
+ it('should support dry run', () => {
187
+ const target = createTestDb();
188
+ const source = createTestDb();
189
+ insertSkill(source, 'skill-new');
190
+ const result = mergeSkillDatabases(target, source, { strategy: 'keep_newer', dryRun: true });
191
+ expect(result.skillsAdded).toBe(1);
192
+ // Verify nothing was actually inserted
193
+ const count = target.prepare('SELECT COUNT(*) as c FROM skills').get();
194
+ expect(count.c).toBe(0);
195
+ });
196
+ it('should report duration', () => {
197
+ const target = createTestDb();
198
+ const source = createTestDb();
199
+ const result = mergeSkillDatabases(target, source);
200
+ expect(result.duration).toBeGreaterThanOrEqual(0);
201
+ });
202
+ });
203
+ // ============================================================================
204
+ // Sync utilities
205
+ // ============================================================================
206
+ describe('getSyncStatus', () => {
207
+ it('should return skill count and null sync times when no config', () => {
208
+ const db = createTestDb();
209
+ insertSkill(db, 'skill-1');
210
+ const status = getSyncStatus(db);
211
+ expect(status.skillsInLocal).toBe(1);
212
+ expect(status.pendingUploads).toBe(0);
213
+ expect(status.pendingDownloads).toBe(0);
214
+ });
215
+ });
216
+ describe('recordSyncRun', () => {
217
+ it('should insert a sync history record', () => {
218
+ const db = createTestDb();
219
+ const id = recordSyncRun(db, 'success', {
220
+ skillsAdded: 3,
221
+ skillsUpdated: 1,
222
+ skillsSkipped: 0,
223
+ conflicts: [],
224
+ duration: 200,
225
+ });
226
+ expect(id).toMatch(/^sync_/);
227
+ const history = getSyncHistory(db, 1);
228
+ expect(history).toHaveLength(1);
229
+ expect(history[0].status).toBe('success');
230
+ expect(history[0].skills_added).toBe(3);
231
+ });
232
+ it('should record running state with null completed_at', () => {
233
+ const db = createTestDb();
234
+ recordSyncRun(db, 'running');
235
+ const history = getSyncHistory(db, 1);
236
+ expect(history[0].status).toBe('running');
237
+ expect(history[0].completed_at).toBeNull();
238
+ });
239
+ it('should record error message for failed runs', () => {
240
+ const db = createTestDb();
241
+ recordSyncRun(db, 'failed', undefined, 'Connection refused');
242
+ const history = getSyncHistory(db, 1);
243
+ expect(history[0].status).toBe('failed');
244
+ expect(history[0].error_message).toBe('Connection refused');
245
+ });
246
+ });
247
+ describe('getSyncHistory', () => {
248
+ it('should return entries ordered by most recent first', () => {
249
+ const db = createTestDb();
250
+ recordSyncRun(db, 'success');
251
+ // Small delay to ensure different timestamps
252
+ recordSyncRun(db, 'failed', undefined, 'error');
253
+ const history = getSyncHistory(db, 10);
254
+ expect(history.length).toBe(2);
255
+ });
256
+ it('should respect limit parameter', () => {
257
+ const db = createTestDb();
258
+ recordSyncRun(db, 'success');
259
+ recordSyncRun(db, 'success');
260
+ recordSyncRun(db, 'success');
261
+ const history = getSyncHistory(db, 2);
262
+ expect(history).toHaveLength(2);
263
+ });
264
+ });
265
+ //# sourceMappingURL=migration.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"migration.test.js","sourceRoot":"","sources":["../../../tests/db/migration.test.ts"],"names":[],"mappings":"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"}
@@ -273,7 +273,10 @@ ${manyDependencies.map((d) => ` - ${d}`).join('\n')}
273
273
  const result = parser.parse(content);
274
274
  expect(result).not.toBeNull();
275
275
  if (result) {
276
- expect(result.dependencies.length).toBe(150);
276
+ // SMI-3135: old string[] format is passed through from frontmatter
277
+ const rawDeps = result.frontmatter.dependencies;
278
+ expect(Array.isArray(rawDeps)).toBe(true);
279
+ expect(rawDeps.length).toBe(150);
277
280
  }
278
281
  });
279
282
  it('should handle nested dependency structures', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"EdgeCases.test.js","sourceRoot":"","sources":["../../../tests/edge-cases/EdgeCases.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AACpE,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtE,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAA;AAC3E,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAA;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,kCAAkC,CAAA;AAG9D,QAAQ,CAAC,+BAA+B,EAAE,GAAG,EAAE;IAC7C,IAAI,EAAqC,CAAA;IACzC,IAAI,IAAqB,CAAA;IACzB,IAAI,MAAqB,CAAA;IACzB,IAAI,MAAmB,CAAA;IAEvB,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,GAAG,cAAc,CAAC,UAAU,CAAC,CAAA;QAC/B,IAAI,GAAG,IAAI,eAAe,CAAC,EAAE,CAAC,CAAA;QAC9B,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAA;QAC/C,MAAM,GAAG,IAAI,WAAW,EAAE,CAAA;IAC5B,CAAC,CAAC,CAAA;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,EAAE;YAAE,aAAa,CAAC,EAAE,CAAC,CAAA;IAC3B,CAAC,CAAC,CAAA;IAEF,+EAA+E;IAC/E,0BAA0B;IAC1B,+EAA+E;IAC/E,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;YACvC,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;gBACnE,MAAM,YAAY,GAAG;oBACnB,WAAW,EAAE,wBAAwB;oBACrC,MAAM,EAAE,aAAa;iBACF,CAAA;gBAErB,0CAA0C;gBAC1C,MAAM,CAAC,GAAG,EAAE;oBACV,IAAI,CAAC;wBACH,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAA;oBAC3B,CAAC;oBAAC,MAAM,CAAC;wBACP,8BAA8B;oBAChC,CAAC;gBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YAClB,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,yDAAyD,EAAE,GAAG,EAAE;gBACjE,MAAM,cAAc,GAAqB;oBACvC,IAAI,EAAE,YAAY;oBAClB,WAAW,EAAE,IAAI;oBACjB,MAAM,EAAE,IAAI;oBACZ,OAAO,EAAE,IAAI;oBACb,YAAY,EAAE,IAAI;oBAClB,IAAI,EAAE,SAAS;iBAChB,CAAA;gBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBACvD,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;oBAC1B,IAAI,EAAE,aAAa;oBACnB,WAAW,EAAE,SAAS;oBACtB,MAAM,EAAE,SAAS;iBAClB,CAAC,CAAA;gBACF,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;gBAC7B,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,CAAA;YAClC,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;gBACrD,MAAM,CAAC,GAAG,EAAE;oBACV,IAAI,CAAC;wBACH,IAAI,CAAC,MAAM,CAAC,EAAsB,CAAC,CAAA;oBACrC,CAAC;oBAAC,MAAM,CAAC;wBACP,WAAW;oBACb,CAAC;gBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YAClB,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACxC,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;gBAC3D,MAAM,iBAAiB,GAAG;oBACxB,sBAAsB,EAAE,4BAA4B;oBACpD,mCAAmC,EAAE,yBAAyB;oBAC9D,oDAAoD,EAAE,iBAAiB;oBACvE,sCAAsC,EAAE,0BAA0B;oBAClE,uBAAuB,EAAE,+BAA+B;oBACxD,UAAU,EAAE,oBAAoB;oBAChC,4BAA4B,EAAE,mBAAmB;iBAClD,CAAA;gBAED,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;oBACxC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;oBACjD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;oBACpC,oDAAoD;oBACpD,MAAM,CAAC,MAAM,KAAK,IAAI,IAAI,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAClE,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;gBACvD,MAAM,SAAS,GAAG,eAAe,CAAA;gBACjC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YACrD,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;gBAClD,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAA;gBAClF,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YACzD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;YACnD,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;gBAC9C,MAAM,eAAe,GAAG,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,CAAC,mBAAmB;gBAE7D,MAAM,KAAK,GAAqB;oBAC9B,IAAI,EAAE,wBAAwB;oBAC9B,WAAW,EAAE,eAAe;iBAC7B,CAAA;gBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;oBAC1B,IAAI,EAAE,yBAAyB;oBAC/B,WAAW,EAAE,eAAe;iBAC7B,CAAC,CAAA;gBACF,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YAC/B,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;gBACnD,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,CAAC,QAAQ;gBAE3D,IAAI,CAAC,MAAM,CAAC;oBACV,IAAI,EAAE,wBAAwB;oBAC9B,WAAW,EAAE,eAAe;iBAC7B,CAAC,CAAA;gBAEF,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YACpE,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;YAC1C,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;gBAC5C,MAAM,WAAW,GAAuB;oBACtC,EAAE,IAAI,EAAE,wBAAwB,EAAE,WAAW,EAAE,gBAAgB,EAAE;oBACjE,EAAE,IAAI,EAAE,sBAAsB,EAAE,WAAW,EAAE,eAAe,EAAE;oBAC9D,EAAE,IAAI,EAAE,sBAAsB,EAAE,WAAW,EAAE,cAAc,EAAE;oBAC7D,EAAE,IAAI,EAAE,6BAA6B,EAAE,WAAW,EAAE,YAAY,EAAE;oBAClE,EAAE,IAAI,EAAE,0BAA0B,EAAE,WAAW,EAAE,YAAY,EAAE;iBAChE,CAAA;gBAED,KAAK,MAAM,KAAK,IAAI,WAAW,EAAE,CAAC;oBAChC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAChD,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;gBAC/C,MAAM,aAAa,GAAuB;oBACxC,EAAE,IAAI,EAAE,oBAAoB,EAAE,WAAW,EAAE,oBAAoB,EAAE,EAAE,UAAU;oBAC7E,EAAE,IAAI,EAAE,kDAAkD,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,UAAU;oBAChG,EAAE,IAAI,EAAE,0BAA0B,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,WAAW;oBAC1E,EAAE,IAAI,EAAE,0BAA0B,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,SAAS;oBACtE,EAAE,IAAI,EAAE,gCAAgC,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,SAAS;oBAC5E,EAAE,IAAI,EAAE,sCAAsC,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,SAAS;oBAClF,EAAE,IAAI,EAAE,0BAA0B,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,OAAO;oBAClE,EAAE,IAAI,EAAE,gCAAgC,EAAE,WAAW,EAAE,SAAS,EAAE,EAAE,UAAU;iBAC/E,CAAA;gBAED,KAAK,MAAM,KAAK,IAAI,aAAa,EAAE,CAAC;oBAClC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAChD,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;gBAC7C,MAAM,eAAe,GAAuB;oBAC1C,EAAE,IAAI,EAAE,uBAAuB,EAAE,WAAW,EAAE,kBAAkB,EAAE,EAAE,mBAAmB;oBACvF,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,uBAAuB,EAAE,EAAE,OAAO;oBAC1E,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,mBAAmB,EAAE,EAAE,MAAM;oBACrE,EAAE,IAAI,EAAE,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,EAAE,MAAM;iBAClE,CAAA;gBAED,KAAK,MAAM,KAAK,IAAI,eAAe,EAAE,CAAC;oBACpC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAChD,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAClC,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;gBACzD,MAAM,YAAY,GAAG;oBACnB,MAAM,EAAE,OAAO;oBACf,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,KAAK;oBACb,MAAM,EAAE,0BAA0B;oBAClC,MAAM,EAAE,yBAAyB;oBACjC,MAAM,EAAE,KAAK;oBACb,MAAM,EAAE,KAAK;oBACb,MAAM,EAAE,yBAAyB;oBACjC,MAAM,EAAE,MAAM;oBACd,MAAM,EAAE,MAAM;iBACf,CAAA;gBAED,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;oBAChC,MAAM,KAAK,GAAqB;wBAC9B,IAAI,EAAE,QAAQ,IAAI,MAAM;wBACxB,WAAW,EAAE,oBAAoB,IAAI,eAAe;qBACrD,CAAA;oBACD,MAAM,CAAC,GAAG,EAAE;wBACV,IAAI,CAAC;4BACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;wBACpB,CAAC;wBAAC,MAAM,CAAC;4BACP,qCAAqC;wBACvC,CAAC;oBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;gBAC7C,MAAM,aAAa,GAAG;oBACpB,oBAAoB;oBACpB,oBAAoB;oBACpB,yBAAyB;oBACzB,WAAW,EAAE,cAAc;oBAC3B,SAAS,EAAE,eAAe;iBAC3B,CAAA;gBAED,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;oBAChC,MAAM,KAAK,GAAqB;wBAC9B,IAAI,EAAE,cAAc,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;wBACtD,WAAW,EAAE,kBAAkB,GAAG,EAAE;qBACrC,CAAA;oBACD,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAChD,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,+EAA+E;IAC/E,sBAAsB;IACtB,+EAA+E;IAC/E,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;QAC1B,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;YACnC,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;gBAC5C,MAAM,gBAAgB,GAAG,8BAA8B,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA,CAAC,QAAQ;gBAC7E,MAAM,YAAY,GAAG;;eAEd,gBAAgB;;;;;;;;;;EAU7B,gBAAgB;CACjB,CAAA;gBAEO,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;gBACnC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBACtD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;gBAE9C,sDAAsD;gBACtD,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;YACrC,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;gBAC5C,MAAM,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA,CAAC,QAAQ;gBAC/C,MAAM,OAAO,GAAG;;;;;EAKtB,WAAW;CACZ,CAAA;gBACO,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YACnD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,mBAAmB,EAAE,GAAG,EAAE;YACjC,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;gBACrD,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;gBAC1E,MAAM,OAAO,GAAG;;;;EAItB,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;;CAInD,CAAA;gBACO,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBACjD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;gBACpC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAA;gBAC7B,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBAC9C,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;gBACpD,MAAM,OAAO,GAAG;;;;;;IAMpB,CAAA;gBAEI,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YACnD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;YAC1B,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;gBAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;gBAEnE,MAAM,KAAK,GAAqB;oBAC9B,IAAI,EAAE,iBAAiB;oBACvB,WAAW,EAAE,wBAAwB;oBACrC,IAAI,EAAE,QAAQ;iBACf,CAAA;gBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YAChD,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;gBACnD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAA;gBAE9E,IAAI,CAAC,MAAM,CAAC;oBACV,IAAI,EAAE,uBAAuB;oBAC7B,WAAW,EAAE,kBAAkB;oBAC/B,IAAI,EAAE,QAAQ;iBACf,CAAC,CAAA;gBAEF,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;gBACnC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAC1E,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;gBAE9C,qCAAqC;gBACrC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;YACpC,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;gBACvD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC3E,MAAM,OAAO,GAAG;;SAEf,QAAQ;IACb,CAAA;gBAEI,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YACnD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;YAC/B,EAAE,CAAC,4CAA4C,EAAE,GAAG,EAAE;gBACpD,MAAM,MAAM,GAAuB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxE,IAAI,EAAE,cAAc,CAAC,EAAE;oBACvB,WAAW,EAAE,6BAA6B,CAAC,EAAE;oBAC7C,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC;iBACjC,CAAC,CAAC,CAAA;gBAEH,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;gBACnC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBACpD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;gBAE9C,6DAA6D;gBAC7D,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;YACrC,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,yCAAyC,EAAE,GAAG,EAAE;gBACjD,qBAAqB;gBACrB,MAAM,MAAM,GAAuB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACzE,IAAI,EAAE,oBAAoB,CAAC,EAAE;oBAC7B,WAAW,EAAE,yDAAyD,CAAC,EAAE;oBACzE,IAAI,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC;iBACxC,CAAC,CAAC,CAAA;gBAEH,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAA;gBAExB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;gBACnC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;gBAClE,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;gBAE9C,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAA;gBACrD,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAA;YACpC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,+EAA+E;IAC/E,wBAAwB;IACxB,+EAA+E;IAC/E,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,QAAQ,CAAC,sDAAsD,EAAE,GAAG,EAAE;YACpE,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;gBACnE,MAAM,oBAAoB,GAAG;oBAC3B,0BAA0B;oBAC1B,aAAa;oBACb,oCAAoC;oBACpC,oCAAoC;oBACpC,gCAAgC;oBAChC,2DAA2D;oBAC3D,UAAU;oBACV,YAAY;oBACZ,2BAA2B;oBAC3B,oBAAoB;oBACpB,WAAW;oBACX,oCAAoC;oBACpC,0BAA0B,EAAE,cAAc;iBAC3C,CAAA;gBAED,KAAK,MAAM,OAAO,IAAI,oBAAoB,EAAE,CAAC;oBAC3C,MAAM,KAAK,GAAqB;wBAC9B,IAAI,EAAE,OAAO;wBACb,WAAW,EAAE,uBAAuB;qBACrC,CAAA;oBAED,8DAA8D;oBAC9D,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAChD,CAAC;gBAED,kCAAkC;gBAClC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;gBACnD,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YAC/B,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,sDAAsD,EAAE,GAAG,EAAE;gBAC9D,MAAM,WAAW,GAAG;oBAClB,iBAAiB;oBACjB,yBAAyB;oBACzB,iCAAiC;oBACjC,WAAW;iBACZ,CAAA;gBAED,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;oBAClC,uEAAuE;oBACvE,4EAA4E;oBAC5E,MAAM,CAAC,GAAG,EAAE;wBACV,IAAI,CAAC;4BACH,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;wBACnC,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACX,iEAAiE;4BACjE,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gCACrD,OAAM,CAAC,4BAA4B;4BACrC,CAAC;4BACD,MAAM,CAAC,CAAA,CAAC,6BAA6B;wBACvC,CAAC;oBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,oDAAoD,EAAE,GAAG,EAAE;gBAC5D,MAAM,KAAK,GAAqB;oBAC9B,IAAI,EAAE,YAAY;oBAClB,MAAM,EAAE,yBAAyB;oBACjC,WAAW,EAAE,0BAA0B;iBACxC,CAAA;gBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YAChD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAClC,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;gBACrD,MAAM,WAAW,GAAG;oBAClB,+BAA+B;oBAC/B,8BAA8B;oBAC9B,uBAAuB;oBACvB,yDAAyD;oBACzD,yBAAyB;oBACzB,wBAAwB;oBACxB,oCAAoC;oBACpC,yCAAyC;oBACzC,cAAc;oBACd,kCAAkC;oBAClC,mDAAmD;oBACnD,2CAA2C,EAAE,qBAAqB;oBAClE,4DAA4D;oBAC5D,oCAAoC;oBACpC,4BAA4B;iBAC7B,CAAA;gBAED,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;oBAClC,MAAM,KAAK,GAAqB;wBAC9B,IAAI,EAAE,YAAY,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE;wBACrE,WAAW,EAAE,OAAO;qBACrB,CAAA;oBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAChD,CAAC;gBAED,mDAAmD;gBACnD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAA;gBAClD,MAAM,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAA;YAC/B,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;gBACnC,MAAM,KAAK,GAAqB;oBAC9B,IAAI,EAAE,gBAAgB;oBACtB,IAAI,EAAE;wBACJ,2BAA2B;wBAC3B,gCAAgC;wBAChC,yBAAyB;qBAC1B;iBACF,CAAA;gBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YAChD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;YACpC,EAAE,CAAC,uDAAuD,EAAE,GAAG,EAAE;gBAC/D,MAAM,qBAAqB,GAAG;oBAC5B,qBAAqB;oBACrB,uCAAuC;oBACvC,8BAA8B;oBAC9B,wBAAwB;oBACxB,6BAA6B;oBAC7B,qCAAqC;oBACrC,yCAAyC;oBACzC,yCAAyC;oBACzC,+BAA+B;oBAC/B,wBAAwB;oBACxB,2BAA2B;iBAC5B,CAAA;gBAED,KAAK,MAAM,OAAO,IAAI,qBAAqB,EAAE,CAAC;oBAC5C,MAAM,KAAK,GAAqB;wBAC9B,EAAE,EAAE,OAAO;wBACX,IAAI,EAAE,qBAAqB;wBAC3B,WAAW,EAAE,wBAAwB;qBACtC,CAAA;oBAED,8CAA8C;oBAC9C,MAAM,CAAC,GAAG,EAAE;wBACV,IAAI,CAAC;4BACH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;wBACpB,CAAC;wBAAC,MAAM,CAAC;4BACP,yBAAyB;wBAC3B,CAAC;oBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;gBAClD,MAAM,KAAK,GAAqB;oBAC9B,IAAI,EAAE,qBAAqB;oBAC3B,OAAO,EAAE,6BAA6B;iBACvC,CAAA;gBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YAChD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;YACnC,EAAE,CAAC,+DAA+D,EAAE,GAAG,EAAE;gBACvE,MAAM,iBAAiB,GAAG;oBACxB,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,mBAAmB,EAAE;oBACvD,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,uBAAuB,EAAE;oBAC7D,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,EAAE,qBAAqB,EAAE;iBAC1D,CAAA;gBAED,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;oBACxC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,OAA2B,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBACtE,CAAC;gBAED,0CAA0C;gBAC1C,MAAM,CAAE,EAA8B,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAA;YAClE,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;gBACrD,MAAM,OAAO,GAAG;;;;;;;IAOpB,CAAA;gBAEI,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAEjD,sBAAsB;gBACtB,MAAM,CAAE,EAA8B,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAA;gBAChE,MAAM,CAAE,EAA8B,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,CAAA;YACjE,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;gBACxD,MAAM,KAAK,GAAqB;oBAC9B,IAAI,EAAE,kBAAkB;oBACxB,WAAW,EAAE,mCAAmC;oBAChD,IAAI,EAAE,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC;iBAChD,CAAA;gBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAC9C,MAAM,CAAE,EAA8B,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAA;YAClE,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;YAC1C,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;gBACxD,MAAM,wBAAwB,GAAG;oBAC/B,UAAU;oBACV,mBAAmB;oBACnB,UAAU;oBACV,WAAW;oBACX,aAAa;oBACb,6BAA6B;oBAC7B,mCAAmC;oBACnC,sCAAsC;oBACtC,MAAM;oBACN,SAAS;oBACT,iBAAiB;oBACjB,iCAAiC;oBACjC,aAAa;oBACb,aAAa;oBACb,SAAS,EAAE,OAAO;oBAClB,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,OAAO;oBACjB,yBAAyB,EAAE,gBAAgB;iBAC5C,CAAA;gBAED,KAAK,MAAM,OAAO,IAAI,wBAAwB,EAAE,CAAC;oBAC/C,MAAM,KAAK,GAAqB;wBAC9B,IAAI,EAAE,YAAY,wBAAwB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;wBAC7D,WAAW,EAAE,OAAO;qBACrB,CAAA;oBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAChD,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;gBAC7D,MAAM,OAAO,GAAG;;;;;;;IAOpB,CAAA;gBAEI,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YACnD,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,8CAA8C,EAAE,GAAG,EAAE;YAC5D,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;gBACxD,oFAAoF;gBACpF,mDAAmD;gBACnD,qDAAqD;gBACrD,MAAM,aAAa,GAAG;oBACpB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,GAAG;oBACpB,iCAAiC;oBACjC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG;oBACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,+BAA+B;oBACpD,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,+BAA+B;iBACtD,CAAA;gBAED,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;oBACpC,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;oBACnC,sEAAsE;oBACtE,uDAAuD;oBACvD,MAAM,CAAC,GAAG,EAAE;wBACV,IAAI,CAAC;4BACH,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;wBACnC,CAAC;wBAAC,OAAO,CAAC,EAAE,CAAC;4BACX,8DAA8D;4BAC9D,IAAI,CAAC,YAAY,KAAK,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gCACrD,OAAM,CAAC,sCAAsC;4BAC/C,CAAC;4BACD,MAAM,CAAC,CAAA,CAAC,6BAA6B;wBACvC,CAAC;oBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;oBAChB,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;oBAE9C,oCAAoC;oBACpC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;gBACrC,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,oCAAoC,EAAE,GAAG,EAAE;gBAC5C,MAAM,KAAK,GAAqB;oBAC9B,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC;oBACvB,WAAW,EAAE,YAAY;iBAC1B,CAAA;gBAED,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;gBACnC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAC9C,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;gBAE9C,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;YACrC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACxC,EAAE,CAAC,kDAAkD,EAAE,GAAG,EAAE;gBAC1D,MAAM,OAAO,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,CAAA;gBAE9C,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;oBAC1B,MAAM,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;oBAClC,MAAM,KAAK,GAAqB;wBAC9B,IAAI,EAAE,QAAQ,GAAG,EAAE;wBACnB,WAAW,EAAE,UAAU;qBACxB,CAAA;oBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAChD,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;gBAC7C,MAAM,aAAa,GAAG;oBACpB,sBAAsB;oBACtB,sBAAsB;oBACtB,sBAAsB;oBACtB,sBAAsB;oBACtB,aAAa;oBACb,YAAY;iBACb,CAAA;gBAED,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;oBACpC,MAAM,KAAK,GAAqB;wBAC9B,IAAI,EAAE,UAAU,aAAa,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;wBAChD,WAAW,EAAE,OAAO;qBACrB,CAAA;oBAED,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAChD,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,+EAA+E;IAC/E,8BAA8B;IAC9B,+EAA+E;IAC/E,QAAQ,CAAC,gBAAgB,EAAE,GAAG,EAAE;QAC9B,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;YACrC,EAAE,CAAC,2CAA2C,EAAE,GAAG,EAAE;gBACnD,MAAM,UAAU,GAAG,GAAG,CAAA;gBAEtB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;gBACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,EAAE,CAAC,EAAE,EAAE,CAAC;oBACpC,MAAM,CAAC,GAAG,EAAE,CACV,IAAI,CAAC,MAAM,CAAC;wBACV,IAAI,EAAE,eAAe,CAAC,EAAE;wBACxB,WAAW,EAAE,qBAAqB;qBACnC,CAAC,CACH,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBACjB,CAAC;gBACD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;gBAE9C,mCAAmC;gBACnC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;YACrC,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;gBAC/C,2BAA2B;gBAC3B,IAAI,CAAC,WAAW,CACd,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACpC,IAAI,EAAE,eAAe,CAAC,EAAE;oBACxB,WAAW,EAAE,kBAAkB;iBAChC,CAAC,CAAC,CACJ,CAAA;gBAED,MAAM,WAAW,GAAG,EAAE,CAAA;gBACtB,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;gBAEnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;oBACrC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAC/D,CAAC;gBAED,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;gBAC9C,mDAAmD;gBACnD,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;YACrC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE;YAChC,EAAE,CAAC,mDAAmD,EAAE,GAAG,EAAE;gBAC3D,oCAAoC;gBACpC,IAAI,CAAC,WAAW,CACd,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACrC,IAAI,EAAE,iBAAiB,CAAC,EAAE;oBAC1B,WAAW,EAAE,uDAAuD,CAAC,EAAE;oBACvE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;iBAC5D,CAAC,CAAC,CACJ,CAAA;gBAED,MAAM,cAAc,GAAG;oBACrB,kCAAkC;oBAClC,qBAAqB;oBACrB,iCAAiC;iBAClC,CAAA;gBAED,KAAK,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;oBACnC,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE,CAAA;oBACnC,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;oBACpD,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,SAAS,CAAA;oBAE9C,yCAAyC;oBACzC,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAA;gBACrC,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACzC,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;gBACrD,2BAA2B;gBAC3B,IAAI,CAAC,WAAW,CACd,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACpC,IAAI,EAAE,kBAAkB,CAAC,EAAE;oBAC3B,WAAW,EAAE,eAAe;iBAC7B,CAAC,CAAC,CACJ,CAAA;gBAED,oCAAoC;gBACpC,MAAM,SAAS,GAAG;oBAChB,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,aAAa;oBACvC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,cAAc;oBACzC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,oBAAoB;oBAC/C,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,aAAa;oBACxC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,cAAc;oBACzC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,sBAAsB;oBACjD,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,qBAAqB;iBAChD,CAAA;gBAED,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;oBACjC,MAAM,CAAC,GAAG,EAAE,CACV,MAAM,CAAC,MAAM,CAAC;wBACZ,KAAK,EAAE,UAAU;wBACjB,GAAG,QAAQ;qBACZ,CAAC,CACH,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBACjB,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,qCAAqC,EAAE,GAAG,EAAE;gBAC7C,MAAM,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YACxE,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;gBAClD,MAAM,CAAC,GAAG,EAAE;oBACV,IAAI,CAAC;wBACH,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;oBAC9C,CAAC;oBAAC,MAAM,CAAC;wBACP,6BAA6B;oBAC/B,CAAC;gBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YAClB,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;YACrC,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;gBACzD,qBAAqB;gBACrB,IAAI,CAAC,WAAW,CACd,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;oBACpC,IAAI,EAAE,oBAAoB,CAAC,EAAE;oBAC7B,WAAW,EAAE,iBAAiB;iBAC/B,CAAC,CAAC,CACJ,CAAA;gBAED,+DAA+D;gBAC/D,MAAM,UAAU,GAAmB,EAAE,CAAA;gBAErC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;oBAC5B,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC,CAAA;oBAC7D,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CACnB,IAAI,CAAC,MAAM,CAAC;wBACV,IAAI,EAAE,kBAAkB,CAAC,EAAE;wBAC3B,WAAW,EAAE,sBAAsB;qBACpC,CAAC,CACH,CAAA;gBACH,CAAC;gBAED,KAAK,MAAM,EAAE,IAAI,UAAU,EAAE,CAAC;oBAC5B,MAAM,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAC1B,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,+EAA+E;IAC/E,yBAAyB;IACzB,+EAA+E;IAC/E,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;YAC3C,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;gBAC3C,MAAM,CAAC,GAAG,EAAE;oBACV,IAAI,CAAC;wBACH,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;oBAC9B,CAAC;oBAAC,MAAM,CAAC;wBACP,6CAA6C;oBAC/C,CAAC;gBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;YAClB,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;gBAC9C,MAAM,gBAAgB,GAAG,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,YAAY,CAAC,CAAA;gBAE9E,KAAK,MAAM,KAAK,IAAI,gBAAgB,EAAE,CAAC;oBACrC,MAAM,CAAC,GAAG,EAAE;wBACV,IAAI,CAAC;4BACH,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAA;wBACjC,CAAC;wBAAC,MAAM,CAAC;4BACP,6BAA6B;wBAC/B,CAAC;oBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;YAClC,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;gBAChD,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAA;gBAExF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,CAAC,GAAG,EAAE;wBACV,IAAI,CAAC;4BACH,IAAI,CAAC,MAAM,CAAC;gCACV,IAAI,EAAE,SAAS,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;gCACtC,YAAY,EAAE,KAAK;6BACpB,CAAC,CAAA;wBACJ,CAAC;wBAAC,MAAM,CAAC;4BACP,4BAA4B;wBAC9B,CAAC;oBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;YAEF,EAAE,CAAC,uCAAuC,EAAE,GAAG,EAAE;gBAC/C,MAAM,MAAM,GAAG;oBACb,MAAM,CAAC,gBAAgB;oBACvB,MAAM,CAAC,gBAAgB;oBACvB,UAAU,EAAE,wBAAwB;oBACpC,CAAC,UAAU,EAAE,wBAAwB;iBACtC,CAAA;gBAED,KAAK,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;oBACzB,MAAM,CAAC,GAAG,EAAE;wBACV,IAAI,CAAC;4BACH,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAA;wBAC9C,CAAC;wBAAC,MAAM,CAAC;4BACP,4BAA4B;wBAC9B,CAAC;oBACH,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,EAAE,CAAA;gBAClB,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;YACpC,EAAE,CAAC,8CAA8C,EAAE,GAAG,EAAE;gBACtD,wEAAwE;gBACxE,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;oBACxB,IAAI,EAAE,gBAAgB;oBACtB,WAAW,EAAE,oBAAoB;iBAClC,CAAC,CAAA;gBAEF,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAA;gBACrC,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAA;YACvC,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"EdgeCases.test.js","sourceRoot":"","sources":["../../../tests/edge-cases/EdgeCases.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @fileoverview Tests for SkillDependencyRepository (SMI-3143)
3
+ * @module @skillsmith/core/tests/repositories/SkillDependencyRepository
4
+ *
5
+ * Tests CRUD operations, upsert idempotency, source filtering,
6
+ * reverse lookup, and graceful missing-table handling.
7
+ * Uses createTestDatabase() which runs all migrations including v10.
8
+ */
9
+ export {};
10
+ //# sourceMappingURL=SkillDependencyRepository.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SkillDependencyRepository.test.d.ts","sourceRoot":"","sources":["../../../tests/repositories/SkillDependencyRepository.test.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}