@jagilber-org/index-server 1.22.0

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 (372) hide show
  1. package/CHANGELOG.md +1354 -0
  2. package/CODE_OF_CONDUCT.md +49 -0
  3. package/CONTRIBUTING.md +99 -0
  4. package/LICENSE +21 -0
  5. package/README.md +228 -0
  6. package/SECURITY.md +50 -0
  7. package/dist/config/configUtils.d.ts +11 -0
  8. package/dist/config/configUtils.js +87 -0
  9. package/dist/config/dashboardConfig.d.ts +46 -0
  10. package/dist/config/dashboardConfig.js +67 -0
  11. package/dist/config/defaultValues.d.ts +63 -0
  12. package/dist/config/defaultValues.js +72 -0
  13. package/dist/config/dirConstants.d.ts +18 -0
  14. package/dist/config/dirConstants.js +29 -0
  15. package/dist/config/featureConfig.d.ts +61 -0
  16. package/dist/config/featureConfig.js +121 -0
  17. package/dist/config/runtimeConfig.d.ts +151 -0
  18. package/dist/config/runtimeConfig.js +380 -0
  19. package/dist/config/serverConfig.d.ts +90 -0
  20. package/dist/config/serverConfig.js +167 -0
  21. package/dist/dashboard/analytics/AnalyticsEngine.d.ts +142 -0
  22. package/dist/dashboard/analytics/AnalyticsEngine.js +373 -0
  23. package/dist/dashboard/analytics/BusinessIntelligence.d.ts +187 -0
  24. package/dist/dashboard/analytics/BusinessIntelligence.js +594 -0
  25. package/dist/dashboard/client/admin.html +2175 -0
  26. package/dist/dashboard/client/chunks/mermaid-layout-elk.esm.min/chunk-SP2CHFBE.mjs +1 -0
  27. package/dist/dashboard/client/chunks/mermaid-layout-elk.esm.min/render-T6MDALS3.mjs +27 -0
  28. package/dist/dashboard/client/css/admin.css +1587 -0
  29. package/dist/dashboard/client/js/admin.auth.js +179 -0
  30. package/dist/dashboard/client/js/admin.boot.js +359 -0
  31. package/dist/dashboard/client/js/admin.config.js +196 -0
  32. package/dist/dashboard/client/js/admin.embeddings.js +426 -0
  33. package/dist/dashboard/client/js/admin.graph.js +615 -0
  34. package/dist/dashboard/client/js/admin.instances.js +120 -0
  35. package/dist/dashboard/client/js/admin.instructions.js +579 -0
  36. package/dist/dashboard/client/js/admin.logs.js +113 -0
  37. package/dist/dashboard/client/js/admin.maintenance.js +393 -0
  38. package/dist/dashboard/client/js/admin.messaging.js +636 -0
  39. package/dist/dashboard/client/js/admin.monitor.js +184 -0
  40. package/dist/dashboard/client/js/admin.overview.js +221 -0
  41. package/dist/dashboard/client/js/admin.performance.js +61 -0
  42. package/dist/dashboard/client/js/admin.sessions.js +292 -0
  43. package/dist/dashboard/client/js/admin.sqlite.js +373 -0
  44. package/dist/dashboard/client/js/admin.utils.js +49 -0
  45. package/dist/dashboard/client/js/chart.umd.js +14 -0
  46. package/dist/dashboard/client/js/elk.bundled.js +6696 -0
  47. package/dist/dashboard/client/js/marked.umd.js +74 -0
  48. package/dist/dashboard/client/js/mermaid.min.js +3022 -0
  49. package/dist/dashboard/client/mermaid-layout-elk.esm.min.mjs +1 -0
  50. package/dist/dashboard/export/DataExporter.d.ts +169 -0
  51. package/dist/dashboard/export/DataExporter.js +737 -0
  52. package/dist/dashboard/export/exporters/csvExporter.d.ts +11 -0
  53. package/dist/dashboard/export/exporters/csvExporter.js +47 -0
  54. package/dist/dashboard/export/exporters/exportTypes.d.ts +89 -0
  55. package/dist/dashboard/export/exporters/exportTypes.js +5 -0
  56. package/dist/dashboard/export/exporters/jsonExporter.d.ts +7 -0
  57. package/dist/dashboard/export/exporters/jsonExporter.js +23 -0
  58. package/dist/dashboard/export/exporters/xmlExporter.d.ts +17 -0
  59. package/dist/dashboard/export/exporters/xmlExporter.js +176 -0
  60. package/dist/dashboard/integration/APIIntegration.d.ts +41 -0
  61. package/dist/dashboard/integration/APIIntegration.js +95 -0
  62. package/dist/dashboard/security/SecurityMonitor.d.ts +167 -0
  63. package/dist/dashboard/security/SecurityMonitor.js +560 -0
  64. package/dist/dashboard/server/AdminPanel.d.ts +195 -0
  65. package/dist/dashboard/server/AdminPanel.js +861 -0
  66. package/dist/dashboard/server/AdminPanelConfig.d.ts +42 -0
  67. package/dist/dashboard/server/AdminPanelConfig.js +80 -0
  68. package/dist/dashboard/server/AdminPanelState.d.ts +47 -0
  69. package/dist/dashboard/server/AdminPanelState.js +215 -0
  70. package/dist/dashboard/server/ApiRoutes.d.ts +17 -0
  71. package/dist/dashboard/server/ApiRoutes.js +184 -0
  72. package/dist/dashboard/server/DashboardServer.d.ts +49 -0
  73. package/dist/dashboard/server/DashboardServer.js +160 -0
  74. package/dist/dashboard/server/FileMetricsStorage.d.ts +49 -0
  75. package/dist/dashboard/server/FileMetricsStorage.js +196 -0
  76. package/dist/dashboard/server/HttpTransport.d.ts +23 -0
  77. package/dist/dashboard/server/HttpTransport.js +116 -0
  78. package/dist/dashboard/server/InstanceManager.d.ts +53 -0
  79. package/dist/dashboard/server/InstanceManager.js +295 -0
  80. package/dist/dashboard/server/KnowledgeStore.d.ts +35 -0
  81. package/dist/dashboard/server/KnowledgeStore.js +105 -0
  82. package/dist/dashboard/server/LeaderElection.d.ts +81 -0
  83. package/dist/dashboard/server/LeaderElection.js +268 -0
  84. package/dist/dashboard/server/MetricsCollector.d.ts +200 -0
  85. package/dist/dashboard/server/MetricsCollector.js +810 -0
  86. package/dist/dashboard/server/SessionPersistenceManager.d.ts +88 -0
  87. package/dist/dashboard/server/SessionPersistenceManager.js +458 -0
  88. package/dist/dashboard/server/ThinClient.d.ts +64 -0
  89. package/dist/dashboard/server/ThinClient.js +237 -0
  90. package/dist/dashboard/server/WebSocketManager.d.ts +161 -0
  91. package/dist/dashboard/server/WebSocketManager.js +448 -0
  92. package/dist/dashboard/server/httpLifecycle.d.ts +17 -0
  93. package/dist/dashboard/server/httpLifecycle.js +35 -0
  94. package/dist/dashboard/server/legacyDashboardHtml.d.ts +9 -0
  95. package/dist/dashboard/server/legacyDashboardHtml.js +618 -0
  96. package/dist/dashboard/server/legacyDashboardStyles.d.ts +5 -0
  97. package/dist/dashboard/server/legacyDashboardStyles.js +490 -0
  98. package/dist/dashboard/server/metricsAggregation.d.ts +252 -0
  99. package/dist/dashboard/server/metricsAggregation.js +210 -0
  100. package/dist/dashboard/server/metricsSerializer.d.ts +25 -0
  101. package/dist/dashboard/server/metricsSerializer.js +195 -0
  102. package/dist/dashboard/server/middleware/ensureLoadedMiddleware.d.ts +25 -0
  103. package/dist/dashboard/server/middleware/ensureLoadedMiddleware.js +24 -0
  104. package/dist/dashboard/server/routes/admin.routes.d.ts +16 -0
  105. package/dist/dashboard/server/routes/admin.routes.js +574 -0
  106. package/dist/dashboard/server/routes/adminAuth.d.ts +4 -0
  107. package/dist/dashboard/server/routes/adminAuth.js +46 -0
  108. package/dist/dashboard/server/routes/alerts.routes.d.ts +7 -0
  109. package/dist/dashboard/server/routes/alerts.routes.js +91 -0
  110. package/dist/dashboard/server/routes/api.feedback.routes.d.ts +73 -0
  111. package/dist/dashboard/server/routes/api.feedback.routes.js +171 -0
  112. package/dist/dashboard/server/routes/api.instructions.routes.d.ts +101 -0
  113. package/dist/dashboard/server/routes/api.instructions.routes.js +213 -0
  114. package/dist/dashboard/server/routes/api.usage.routes.d.ts +57 -0
  115. package/dist/dashboard/server/routes/api.usage.routes.js +374 -0
  116. package/dist/dashboard/server/routes/embeddings.routes.d.ts +6 -0
  117. package/dist/dashboard/server/routes/embeddings.routes.js +246 -0
  118. package/dist/dashboard/server/routes/graph.routes.d.ts +6 -0
  119. package/dist/dashboard/server/routes/graph.routes.js +279 -0
  120. package/dist/dashboard/server/routes/index.d.ts +39 -0
  121. package/dist/dashboard/server/routes/index.js +229 -0
  122. package/dist/dashboard/server/routes/instances.routes.d.ts +6 -0
  123. package/dist/dashboard/server/routes/instances.routes.js +35 -0
  124. package/dist/dashboard/server/routes/instructions.routes.d.ts +8 -0
  125. package/dist/dashboard/server/routes/instructions.routes.js +268 -0
  126. package/dist/dashboard/server/routes/knowledge.routes.d.ts +6 -0
  127. package/dist/dashboard/server/routes/knowledge.routes.js +80 -0
  128. package/dist/dashboard/server/routes/logs.routes.d.ts +6 -0
  129. package/dist/dashboard/server/routes/logs.routes.js +166 -0
  130. package/dist/dashboard/server/routes/messaging.routes.d.ts +16 -0
  131. package/dist/dashboard/server/routes/messaging.routes.js +307 -0
  132. package/dist/dashboard/server/routes/metrics.routes.d.ts +10 -0
  133. package/dist/dashboard/server/routes/metrics.routes.js +335 -0
  134. package/dist/dashboard/server/routes/scripts.routes.d.ts +9 -0
  135. package/dist/dashboard/server/routes/scripts.routes.js +84 -0
  136. package/dist/dashboard/server/routes/sqlite.routes.d.ts +9 -0
  137. package/dist/dashboard/server/routes/sqlite.routes.js +570 -0
  138. package/dist/dashboard/server/routes/status.routes.d.ts +7 -0
  139. package/dist/dashboard/server/routes/status.routes.js +179 -0
  140. package/dist/dashboard/server/routes/synthetic.routes.d.ts +7 -0
  141. package/dist/dashboard/server/routes/synthetic.routes.js +197 -0
  142. package/dist/dashboard/server/routes/tools.routes.d.ts +6 -0
  143. package/dist/dashboard/server/routes/tools.routes.js +47 -0
  144. package/dist/dashboard/server/routes/usage.routes.d.ts +6 -0
  145. package/dist/dashboard/server/routes/usage.routes.js +26 -0
  146. package/dist/dashboard/server/wsInit.d.ts +16 -0
  147. package/dist/dashboard/server/wsInit.js +35 -0
  148. package/dist/externalClientLib.d.ts +1 -0
  149. package/dist/externalClientLib.js +2 -0
  150. package/dist/minimal/index.d.ts +1 -0
  151. package/dist/minimal/index.js +140 -0
  152. package/dist/models/SessionPersistence.d.ts +115 -0
  153. package/dist/models/SessionPersistence.js +66 -0
  154. package/dist/models/instruction.d.ts +46 -0
  155. package/dist/models/instruction.js +2 -0
  156. package/dist/perf/benchmark.d.ts +1 -0
  157. package/dist/perf/benchmark.js +50 -0
  158. package/dist/portableClientWrapper.d.ts +1 -0
  159. package/dist/portableClientWrapper.js +2 -0
  160. package/dist/schemas/index.d.ts +132 -0
  161. package/dist/schemas/index.js +372 -0
  162. package/dist/scripts/runPerformanceBaseline.d.ts +1 -0
  163. package/dist/scripts/runPerformanceBaseline.js +17 -0
  164. package/dist/server/backgroundServicesStartup.d.ts +3 -0
  165. package/dist/server/backgroundServicesStartup.js +51 -0
  166. package/dist/server/handshakeManager.d.ts +25 -0
  167. package/dist/server/handshakeManager.js +470 -0
  168. package/dist/server/index-server.d.ts +38 -0
  169. package/dist/server/index-server.js +620 -0
  170. package/dist/server/multiInstanceStartup.d.ts +6 -0
  171. package/dist/server/multiInstanceStartup.js +132 -0
  172. package/dist/server/registry.d.ts +44 -0
  173. package/dist/server/registry.js +236 -0
  174. package/dist/server/sdkServer.d.ts +8 -0
  175. package/dist/server/sdkServer.js +299 -0
  176. package/dist/server/shutdownGuard.d.ts +41 -0
  177. package/dist/server/shutdownGuard.js +52 -0
  178. package/dist/server/startupDiagnostics.d.ts +2 -0
  179. package/dist/server/startupDiagnostics.js +33 -0
  180. package/dist/server/thin-client.d.ts +22 -0
  181. package/dist/server/thin-client.js +111 -0
  182. package/dist/server/transport.d.ts +41 -0
  183. package/dist/server/transport.js +312 -0
  184. package/dist/server/transportFactory.d.ts +21 -0
  185. package/dist/server/transportFactory.js +429 -0
  186. package/dist/services/atomicFs.d.ts +22 -0
  187. package/dist/services/atomicFs.js +103 -0
  188. package/dist/services/auditLog.d.ts +38 -0
  189. package/dist/services/auditLog.js +142 -0
  190. package/dist/services/autoBackup.d.ts +14 -0
  191. package/dist/services/autoBackup.js +171 -0
  192. package/dist/services/autoSplit.d.ts +32 -0
  193. package/dist/services/autoSplit.js +113 -0
  194. package/dist/services/backupZip.d.ts +25 -0
  195. package/dist/services/backupZip.js +112 -0
  196. package/dist/services/bootstrapGating.d.ts +123 -0
  197. package/dist/services/bootstrapGating.js +221 -0
  198. package/dist/services/canonical.d.ts +23 -0
  199. package/dist/services/canonical.js +65 -0
  200. package/dist/services/categoryRules.d.ts +7 -0
  201. package/dist/services/categoryRules.js +37 -0
  202. package/dist/services/classificationService.d.ts +42 -0
  203. package/dist/services/classificationService.js +168 -0
  204. package/dist/services/embeddingService.d.ts +62 -0
  205. package/dist/services/embeddingService.js +264 -0
  206. package/dist/services/errors.d.ts +22 -0
  207. package/dist/services/errors.js +31 -0
  208. package/dist/services/featureFlags.d.ts +25 -0
  209. package/dist/services/featureFlags.js +89 -0
  210. package/dist/services/features.d.ts +13 -0
  211. package/dist/services/features.js +35 -0
  212. package/dist/services/handlers/instructions.add.d.ts +1 -0
  213. package/dist/services/handlers/instructions.add.js +510 -0
  214. package/dist/services/handlers/instructions.groom.d.ts +1 -0
  215. package/dist/services/handlers/instructions.groom.js +575 -0
  216. package/dist/services/handlers/instructions.import.d.ts +1 -0
  217. package/dist/services/handlers/instructions.import.js +205 -0
  218. package/dist/services/handlers/instructions.patch.d.ts +1 -0
  219. package/dist/services/handlers/instructions.patch.js +121 -0
  220. package/dist/services/handlers/instructions.query.d.ts +159 -0
  221. package/dist/services/handlers/instructions.query.js +469 -0
  222. package/dist/services/handlers/instructions.reload.d.ts +1 -0
  223. package/dist/services/handlers/instructions.reload.js +13 -0
  224. package/dist/services/handlers/instructions.remove.d.ts +1 -0
  225. package/dist/services/handlers/instructions.remove.js +122 -0
  226. package/dist/services/handlers/instructions.shared.d.ts +32 -0
  227. package/dist/services/handlers/instructions.shared.js +91 -0
  228. package/dist/services/handlers.activation.d.ts +1 -0
  229. package/dist/services/handlers.activation.js +203 -0
  230. package/dist/services/handlers.bootstrap.d.ts +1 -0
  231. package/dist/services/handlers.bootstrap.js +38 -0
  232. package/dist/services/handlers.dashboardConfig.d.ts +34 -0
  233. package/dist/services/handlers.dashboardConfig.js +110 -0
  234. package/dist/services/handlers.diagnostics.d.ts +1 -0
  235. package/dist/services/handlers.diagnostics.js +64 -0
  236. package/dist/services/handlers.feedback.d.ts +15 -0
  237. package/dist/services/handlers.feedback.js +389 -0
  238. package/dist/services/handlers.gates.d.ts +1 -0
  239. package/dist/services/handlers.gates.js +47 -0
  240. package/dist/services/handlers.graph.d.ts +53 -0
  241. package/dist/services/handlers.graph.js +231 -0
  242. package/dist/services/handlers.help.d.ts +1 -0
  243. package/dist/services/handlers.help.js +119 -0
  244. package/dist/services/handlers.instructionSchema.d.ts +1 -0
  245. package/dist/services/handlers.instructionSchema.js +227 -0
  246. package/dist/services/handlers.instructions.d.ts +8 -0
  247. package/dist/services/handlers.instructions.js +14 -0
  248. package/dist/services/handlers.instructionsDiagnostics.d.ts +1 -0
  249. package/dist/services/handlers.instructionsDiagnostics.js +14 -0
  250. package/dist/services/handlers.integrity.d.ts +1 -0
  251. package/dist/services/handlers.integrity.js +35 -0
  252. package/dist/services/handlers.manifest.d.ts +1 -0
  253. package/dist/services/handlers.manifest.js +24 -0
  254. package/dist/services/handlers.messaging.d.ts +12 -0
  255. package/dist/services/handlers.messaging.js +203 -0
  256. package/dist/services/handlers.metrics.d.ts +1 -0
  257. package/dist/services/handlers.metrics.js +43 -0
  258. package/dist/services/handlers.promote.d.ts +1 -0
  259. package/dist/services/handlers.promote.js +326 -0
  260. package/dist/services/handlers.prompt.d.ts +1 -0
  261. package/dist/services/handlers.prompt.js +7 -0
  262. package/dist/services/handlers.search.d.ts +69 -0
  263. package/dist/services/handlers.search.js +669 -0
  264. package/dist/services/handlers.testPrimitive.d.ts +1 -0
  265. package/dist/services/handlers.testPrimitive.js +5 -0
  266. package/dist/services/handlers.trace.d.ts +1 -0
  267. package/dist/services/handlers.trace.js +35 -0
  268. package/dist/services/handlers.usage.d.ts +1 -0
  269. package/dist/services/handlers.usage.js +11 -0
  270. package/dist/services/hotScore.d.ts +137 -0
  271. package/dist/services/hotScore.js +244 -0
  272. package/dist/services/indexContext.d.ts +117 -0
  273. package/dist/services/indexContext.js +989 -0
  274. package/dist/services/indexLoader.d.ts +44 -0
  275. package/dist/services/indexLoader.js +920 -0
  276. package/dist/services/indexRepository.d.ts +32 -0
  277. package/dist/services/indexRepository.js +71 -0
  278. package/dist/services/indexingService.d.ts +1 -0
  279. package/dist/services/indexingService.js +2 -0
  280. package/dist/services/instructions.dispatcher.d.ts +1 -0
  281. package/dist/services/instructions.dispatcher.js +231 -0
  282. package/dist/services/logPrefix.d.ts +1 -0
  283. package/dist/services/logPrefix.js +30 -0
  284. package/dist/services/logger.d.ts +52 -0
  285. package/dist/services/logger.js +268 -0
  286. package/dist/services/manifestManager.d.ts +82 -0
  287. package/dist/services/manifestManager.js +200 -0
  288. package/dist/services/messaging/agentMailbox.d.ts +60 -0
  289. package/dist/services/messaging/agentMailbox.js +353 -0
  290. package/dist/services/messaging/messagingPersistence.d.ts +20 -0
  291. package/dist/services/messaging/messagingPersistence.js +111 -0
  292. package/dist/services/messaging/messagingTypes.d.ts +150 -0
  293. package/dist/services/messaging/messagingTypes.js +66 -0
  294. package/dist/services/ownershipService.d.ts +1 -0
  295. package/dist/services/ownershipService.js +36 -0
  296. package/dist/services/performanceBaseline.d.ts +19 -0
  297. package/dist/services/performanceBaseline.js +210 -0
  298. package/dist/services/preflight.d.ts +12 -0
  299. package/dist/services/preflight.js +79 -0
  300. package/dist/services/promptReviewService.d.ts +44 -0
  301. package/dist/services/promptReviewService.js +101 -0
  302. package/dist/services/responseEnvelope.d.ts +6 -0
  303. package/dist/services/responseEnvelope.js +25 -0
  304. package/dist/services/seedBootstrap.d.ts +34 -0
  305. package/dist/services/seedBootstrap.js +259 -0
  306. package/dist/services/storage/factory.d.ts +17 -0
  307. package/dist/services/storage/factory.js +35 -0
  308. package/dist/services/storage/hashUtils.d.ts +11 -0
  309. package/dist/services/storage/hashUtils.js +35 -0
  310. package/dist/services/storage/index.d.ts +12 -0
  311. package/dist/services/storage/index.js +18 -0
  312. package/dist/services/storage/jsonFileStore.d.ts +32 -0
  313. package/dist/services/storage/jsonFileStore.js +241 -0
  314. package/dist/services/storage/migrationEngine.d.ts +35 -0
  315. package/dist/services/storage/migrationEngine.js +93 -0
  316. package/dist/services/storage/sqliteMessageStore.d.ts +53 -0
  317. package/dist/services/storage/sqliteMessageStore.js +146 -0
  318. package/dist/services/storage/sqliteSchema.d.ts +12 -0
  319. package/dist/services/storage/sqliteSchema.js +123 -0
  320. package/dist/services/storage/sqliteStore.d.ts +42 -0
  321. package/dist/services/storage/sqliteStore.js +361 -0
  322. package/dist/services/storage/sqliteUsageStore.d.ts +35 -0
  323. package/dist/services/storage/sqliteUsageStore.js +94 -0
  324. package/dist/services/storage/types.d.ts +171 -0
  325. package/dist/services/storage/types.js +12 -0
  326. package/dist/services/toolHandlers.d.ts +23 -0
  327. package/dist/services/toolHandlers.js +50 -0
  328. package/dist/services/toolRegistry.d.ts +20 -0
  329. package/dist/services/toolRegistry.js +490 -0
  330. package/dist/services/toolRegistry.zod.d.ts +10 -0
  331. package/dist/services/toolRegistry.zod.js +325 -0
  332. package/dist/services/tracing.d.ts +26 -0
  333. package/dist/services/tracing.js +260 -0
  334. package/dist/services/usageBuckets.d.ts +161 -0
  335. package/dist/services/usageBuckets.js +364 -0
  336. package/dist/services/validationService.d.ts +38 -0
  337. package/dist/services/validationService.js +125 -0
  338. package/dist/utils/BufferRing.d.ts +203 -0
  339. package/dist/utils/BufferRing.js +551 -0
  340. package/dist/utils/BufferRingExamples.d.ts +55 -0
  341. package/dist/utils/BufferRingExamples.js +188 -0
  342. package/dist/utils/envUtils.d.ts +42 -0
  343. package/dist/utils/envUtils.js +80 -0
  344. package/dist/utils/memoryMonitor.d.ts +83 -0
  345. package/dist/utils/memoryMonitor.js +275 -0
  346. package/dist/versioning/schemaVersion.d.ts +6 -0
  347. package/dist/versioning/schemaVersion.js +94 -0
  348. package/package.json +139 -0
  349. package/schemas/README.md +13 -0
  350. package/schemas/feedback-entry.schema.json +27 -0
  351. package/schemas/graph-export-v2.schema.json +60 -0
  352. package/schemas/index-server.code-schema.json +40670 -0
  353. package/schemas/instruction.schema.json +262 -0
  354. package/schemas/json-schema/SessionPersistence-persisted-admin-session.schema.json +54 -0
  355. package/schemas/json-schema/SessionPersistence-persisted-session-history-entry.schema.json +51 -0
  356. package/schemas/json-schema/SessionPersistence-persisted-web-socket-connection.schema.json +54 -0
  357. package/schemas/json-schema/SessionPersistence-session-persistence-config.schema.json +110 -0
  358. package/schemas/json-schema/SessionPersistence-session-persistence-data.schema.json +229 -0
  359. package/schemas/json-schema/SessionPersistence-session-persistence-manifest.schema.json +109 -0
  360. package/schemas/json-schema/SessionPersistence-session-persistence-metadata.schema.json +55 -0
  361. package/schemas/json-schema/instruction-audience-scope.schema.json +14 -0
  362. package/schemas/json-schema/instruction-content-type.schema.json +17 -0
  363. package/schemas/json-schema/instruction-instruction-entry.schema.json +210 -0
  364. package/schemas/json-schema/instruction-requirement-level.schema.json +16 -0
  365. package/schemas/manifest.json +78 -0
  366. package/schemas/manifest.schema.json +33 -0
  367. package/schemas/usage-batch.schema.json +16 -0
  368. package/schemas/usage-buckets.schema.json +30 -0
  369. package/schemas/usage-event.schema.json +17 -0
  370. package/scripts/copy-dashboard-assets.mjs +170 -0
  371. package/scripts/dist/README.md +15 -0
  372. package/scripts/setup-hooks.cjs +28 -0
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Centralized default values for timeouts, limits, thresholds, and other
3
+ * numeric constants used across configuration modules.
4
+ * Import from here instead of hardcoding magic numbers.
5
+ */
6
+ export declare const DEFAULT_TIMEOUTS_MS: {
7
+ readonly FATAL_EXIT_DELAY: 15;
8
+ readonly IDLE_KEEPALIVE: 30000;
9
+ readonly REQUEST_TIMEOUT: 30000;
10
+ readonly HEARTBEAT: 5000;
11
+ readonly STALE_THRESHOLD: 15000;
12
+ readonly POLL_INTERVAL: 10000;
13
+ readonly TOOLCALL_FLUSH: 5000;
14
+ readonly TOOLCALL_COMPACT: 300000;
15
+ readonly HEALTH_MIN_UPTIME: 1000;
16
+ readonly MESSAGING_SWEEP: 60000;
17
+ readonly AUTO_BACKUP_INTERVAL: 3600000;
18
+ readonly SESSION_PERSISTENCE_INTERVAL: 30000;
19
+ readonly AUTO_REFRESH: 300000;
20
+ };
21
+ export declare const DEFAULT_LIMITS: {
22
+ readonly MAX_CONNECTIONS: 100;
23
+ readonly MAX_PORT_TRIES: 10;
24
+ readonly MAX_BULK_DELETE: 5;
25
+ readonly MAX_FEEDBACK_ENTRIES: 1000;
26
+ readonly MAX_MESSAGES: 10000;
27
+ readonly MAX_SESSION_HISTORY: 200;
28
+ readonly BODY_WARN_LENGTH: 100000;
29
+ readonly BODY_MIN_LENGTH: 1000;
30
+ readonly BODY_MAX_LENGTH: 1000000;
31
+ readonly AUTO_BACKUP_MAX_COUNT: 10;
32
+ readonly TOOLCALL_CHUNK_SIZE: 250;
33
+ readonly LIST_CONCURRENCY: 8;
34
+ readonly LIST_MAX_DURATION_MS: 7000;
35
+ readonly ATOMIC_WRITE_RETRIES: 5;
36
+ readonly ATOMIC_WRITE_BACKOFF_MS: 10;
37
+ readonly READ_RETRIES: 3;
38
+ readonly READ_BACKOFF_MS: 8;
39
+ };
40
+ export declare const DEFAULT_THRESHOLDS: {
41
+ readonly MEMORY_THRESHOLD: 0.95;
42
+ readonly ERROR_RATE_THRESHOLD: 10;
43
+ readonly RESOURCE_CAPACITY: 720;
44
+ readonly RESOURCE_SAMPLE_INTERVAL_MS: 5000;
45
+ };
46
+ export declare const DEFAULT_PORTS: {
47
+ readonly DASHBOARD: 8787;
48
+ readonly DASHBOARD_DEV: 4000;
49
+ readonly LEADER: 9090;
50
+ readonly LEADER_DEV: 4090;
51
+ readonly BOOTSTRAP_TOKEN_TTL_SEC: 900;
52
+ };
53
+ export declare const DEFAULT_GOVERNANCE: {
54
+ readonly HASH_CANON_VARIANTS: 1;
55
+ readonly HASH_CANON_VARIANTS_MAX: 8;
56
+ readonly HASH_IMPORT_SET_SIZE: 2;
57
+ readonly HASH_IMPORT_SET_SIZE_MAX: 5;
58
+ readonly USAGE_FLUSH_MS: 75;
59
+ };
60
+ export declare const DEFAULT_SEMANTIC: {
61
+ readonly MODEL: "Xenova/all-MiniLM-L6-v2";
62
+ readonly DEVICE: "cpu";
63
+ };
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ /**
3
+ * Centralized default values for timeouts, limits, thresholds, and other
4
+ * numeric constants used across configuration modules.
5
+ * Import from here instead of hardcoding magic numbers.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.DEFAULT_SEMANTIC = exports.DEFAULT_GOVERNANCE = exports.DEFAULT_PORTS = exports.DEFAULT_THRESHOLDS = exports.DEFAULT_LIMITS = exports.DEFAULT_TIMEOUTS_MS = void 0;
9
+ // ── Timeouts (milliseconds) ──────────────────────────────────────────
10
+ exports.DEFAULT_TIMEOUTS_MS = {
11
+ FATAL_EXIT_DELAY: 15,
12
+ IDLE_KEEPALIVE: 30000,
13
+ REQUEST_TIMEOUT: 30000,
14
+ HEARTBEAT: 5000,
15
+ STALE_THRESHOLD: 15000,
16
+ POLL_INTERVAL: 10000,
17
+ TOOLCALL_FLUSH: 5000,
18
+ TOOLCALL_COMPACT: 300000,
19
+ HEALTH_MIN_UPTIME: 1000,
20
+ MESSAGING_SWEEP: 60000,
21
+ AUTO_BACKUP_INTERVAL: 3600000,
22
+ SESSION_PERSISTENCE_INTERVAL: 30000,
23
+ AUTO_REFRESH: 300000,
24
+ };
25
+ // ── Limits ───────────────────────────────────────────────────────────
26
+ exports.DEFAULT_LIMITS = {
27
+ MAX_CONNECTIONS: 100,
28
+ MAX_PORT_TRIES: 10,
29
+ MAX_BULK_DELETE: 5,
30
+ MAX_FEEDBACK_ENTRIES: 1000,
31
+ MAX_MESSAGES: 10000,
32
+ MAX_SESSION_HISTORY: 200,
33
+ BODY_WARN_LENGTH: 100000,
34
+ BODY_MIN_LENGTH: 1000,
35
+ BODY_MAX_LENGTH: 1000000,
36
+ AUTO_BACKUP_MAX_COUNT: 10,
37
+ TOOLCALL_CHUNK_SIZE: 250,
38
+ LIST_CONCURRENCY: 8,
39
+ LIST_MAX_DURATION_MS: 7000,
40
+ ATOMIC_WRITE_RETRIES: 5,
41
+ ATOMIC_WRITE_BACKOFF_MS: 10,
42
+ READ_RETRIES: 3,
43
+ READ_BACKOFF_MS: 8,
44
+ };
45
+ // ── Resource / health thresholds ─────────────────────────────────────
46
+ exports.DEFAULT_THRESHOLDS = {
47
+ MEMORY_THRESHOLD: 0.95,
48
+ ERROR_RATE_THRESHOLD: 10,
49
+ RESOURCE_CAPACITY: 720,
50
+ RESOURCE_SAMPLE_INTERVAL_MS: 5000,
51
+ };
52
+ // ── Network ──────────────────────────────────────────────────────────
53
+ exports.DEFAULT_PORTS = {
54
+ DASHBOARD: 8787,
55
+ DASHBOARD_DEV: 4000,
56
+ LEADER: 9090,
57
+ LEADER_DEV: 4090,
58
+ BOOTSTRAP_TOKEN_TTL_SEC: 900,
59
+ };
60
+ // ── Governance ───────────────────────────────────────────────────────
61
+ exports.DEFAULT_GOVERNANCE = {
62
+ HASH_CANON_VARIANTS: 1,
63
+ HASH_CANON_VARIANTS_MAX: 8,
64
+ HASH_IMPORT_SET_SIZE: 2,
65
+ HASH_IMPORT_SET_SIZE_MAX: 5,
66
+ USAGE_FLUSH_MS: 75,
67
+ };
68
+ // ── Semantic search ──────────────────────────────────────────────────
69
+ exports.DEFAULT_SEMANTIC = {
70
+ MODEL: 'Xenova/all-MiniLM-L6-v2',
71
+ DEVICE: 'cpu',
72
+ };
@@ -0,0 +1,18 @@
1
+ export declare const DIR: {
2
+ readonly LOGS: "logs";
3
+ readonly LOGS_TRACE: string;
4
+ readonly LOGS_MCP_SERVER: string;
5
+ readonly LOGS_AUDIT: string;
6
+ readonly LOGS_NORMALIZATION: string;
7
+ readonly DATA: "data";
8
+ readonly DATA_MODELS: string;
9
+ readonly DATA_STATE: string;
10
+ readonly DATA_EMBEDDINGS: string;
11
+ readonly DATA_SQLITE: string;
12
+ readonly DATA_MESSAGING: string;
13
+ readonly BACKUPS: "backups";
14
+ readonly INSTRUCTIONS: "instructions";
15
+ readonly METRICS: "metrics";
16
+ readonly FEEDBACK: "feedback";
17
+ readonly FLAGS: "flags.json";
18
+ };
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.DIR = void 0;
7
+ /**
8
+ * Centralized directory / file path segments used across configuration modules.
9
+ * All values are relative — combine with CWD via `path.join(CWD, DIR.X)`.
10
+ */
11
+ const path_1 = __importDefault(require("path"));
12
+ exports.DIR = {
13
+ LOGS: 'logs',
14
+ LOGS_TRACE: path_1.default.join('logs', 'trace'),
15
+ LOGS_MCP_SERVER: path_1.default.join('logs', 'mcp-server.log'),
16
+ LOGS_AUDIT: path_1.default.join('logs', 'instruction-transactions.log.jsonl'),
17
+ LOGS_NORMALIZATION: path_1.default.join('logs', 'index-normalization.log'),
18
+ DATA: 'data',
19
+ DATA_MODELS: path_1.default.join('data', 'models'),
20
+ DATA_STATE: path_1.default.join('data', 'state'),
21
+ DATA_EMBEDDINGS: path_1.default.join('data', 'embeddings.json'),
22
+ DATA_SQLITE: path_1.default.join('data', 'index.db'),
23
+ DATA_MESSAGING: path_1.default.join('data', 'messaging'),
24
+ BACKUPS: 'backups',
25
+ INSTRUCTIONS: 'instructions',
26
+ METRICS: 'metrics',
27
+ FEEDBACK: 'feedback',
28
+ FLAGS: 'flags.json',
29
+ };
@@ -0,0 +1,61 @@
1
+ export interface FeatureFlagsConfig {
2
+ file: string;
3
+ envNamespace: Record<string, string>;
4
+ indexFeatures: Set<string>;
5
+ }
6
+ export interface FeedbackConfig {
7
+ dir: string;
8
+ maxEntries: number;
9
+ }
10
+ export interface MessagingConfig {
11
+ dir: string;
12
+ maxMessages: number;
13
+ sweepIntervalMs: number;
14
+ }
15
+ type SemanticDevice = 'cpu' | 'cuda' | 'dml';
16
+ export interface SemanticConfig {
17
+ enabled: boolean;
18
+ model: string;
19
+ cacheDir: string;
20
+ embeddingPath: string;
21
+ device: SemanticDevice;
22
+ localOnly: boolean;
23
+ }
24
+ export interface MinimalConfig {
25
+ debugOrdering: boolean;
26
+ }
27
+ export interface BootstrapSeedConfig {
28
+ autoSeed: boolean;
29
+ verbose: boolean;
30
+ }
31
+ export interface ValidationConfig {
32
+ mode: string;
33
+ }
34
+ export interface DynamicConfig {
35
+ dashboardConfig: Record<string, string>;
36
+ apiIntegration: Record<string, string>;
37
+ }
38
+ export interface GraphConfig {
39
+ includePrimaryEdges: boolean;
40
+ largeCategoryCap: number;
41
+ explicitIncludePrimaryEnv: boolean;
42
+ explicitLargeCategoryEnv: boolean;
43
+ signature: string;
44
+ }
45
+ export declare function parseFeatureFlagsConfig(): FeatureFlagsConfig;
46
+ export declare function parseFeedbackConfig(): FeedbackConfig;
47
+ export declare function parseMessagingConfig(): MessagingConfig;
48
+ export declare function parseSemanticConfig(): SemanticConfig;
49
+ export declare function parseMinimalConfig(): MinimalConfig;
50
+ export declare function parseBootstrapSeedConfig(): BootstrapSeedConfig;
51
+ export declare function parseValidationConfig(): ValidationConfig;
52
+ export declare function parseDynamicConfig(): DynamicConfig;
53
+ export declare function parseGraphConfig(): GraphConfig;
54
+ export interface StorageConfig {
55
+ backend: 'json' | 'sqlite';
56
+ sqlitePath: string;
57
+ sqliteWal: boolean;
58
+ sqliteMigrateOnStart: boolean;
59
+ }
60
+ export declare function parseStorageConfig(): StorageConfig;
61
+ export {};
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.parseFeatureFlagsConfig = parseFeatureFlagsConfig;
7
+ exports.parseFeedbackConfig = parseFeedbackConfig;
8
+ exports.parseMessagingConfig = parseMessagingConfig;
9
+ exports.parseSemanticConfig = parseSemanticConfig;
10
+ exports.parseMinimalConfig = parseMinimalConfig;
11
+ exports.parseBootstrapSeedConfig = parseBootstrapSeedConfig;
12
+ exports.parseValidationConfig = parseValidationConfig;
13
+ exports.parseDynamicConfig = parseDynamicConfig;
14
+ exports.parseGraphConfig = parseGraphConfig;
15
+ exports.parseStorageConfig = parseStorageConfig;
16
+ /**
17
+ * Feature domain config: feature flags, feedback, messaging, semantic search,
18
+ * minimal mode, bootstrap seed, validation, dynamic config, and graph settings.
19
+ */
20
+ const path_1 = __importDefault(require("path"));
21
+ const envUtils_1 = require("../utils/envUtils");
22
+ const configUtils_1 = require("./configUtils");
23
+ const dirConstants_1 = require("./dirConstants");
24
+ const defaultValues_1 = require("./defaultValues");
25
+ function parseFeatureFlagsConfig() {
26
+ const envNamespace = {};
27
+ for (const [key, value] of Object.entries(process.env)) {
28
+ if (key.startsWith('INDEX_SERVER_FLAG_') && typeof value === 'string') {
29
+ envNamespace[key.substring('INDEX_SERVER_FLAG_'.length).toLowerCase()] = value;
30
+ }
31
+ }
32
+ return {
33
+ file: (0, configUtils_1.toAbsolute)(process.env.INDEX_SERVER_FLAGS_FILE, path_1.default.join(configUtils_1.CWD, dirConstants_1.DIR.FLAGS)),
34
+ envNamespace,
35
+ indexFeatures: new Set((0, configUtils_1.parseCsvEnv)('INDEX_SERVER_FEATURES')),
36
+ };
37
+ }
38
+ function parseFeedbackConfig() {
39
+ return {
40
+ dir: (0, configUtils_1.toAbsolute)(process.env.INDEX_SERVER_FEEDBACK_DIR, path_1.default.join(configUtils_1.CWD, dirConstants_1.DIR.FEEDBACK)),
41
+ maxEntries: (0, configUtils_1.numberFromEnv)('INDEX_SERVER_FEEDBACK_MAX_ENTRIES', defaultValues_1.DEFAULT_LIMITS.MAX_FEEDBACK_ENTRIES),
42
+ };
43
+ }
44
+ function parseMessagingConfig() {
45
+ return {
46
+ dir: (0, configUtils_1.toAbsolute)(process.env.INDEX_SERVER_MESSAGING_DIR, path_1.default.join(configUtils_1.CWD, dirConstants_1.DIR.DATA_MESSAGING)),
47
+ maxMessages: (0, configUtils_1.numberFromEnv)('INDEX_SERVER_MESSAGING_MAX', defaultValues_1.DEFAULT_LIMITS.MAX_MESSAGES),
48
+ sweepIntervalMs: (0, configUtils_1.numberFromEnv)('INDEX_SERVER_MESSAGING_SWEEP_MS', defaultValues_1.DEFAULT_TIMEOUTS_MS.MESSAGING_SWEEP),
49
+ };
50
+ }
51
+ function parseSemanticConfig() {
52
+ const validDevices = ['cpu', 'cuda', 'dml'];
53
+ const rawDevice = (process.env.INDEX_SERVER_SEMANTIC_DEVICE || 'cpu').toLowerCase();
54
+ const device = validDevices.includes(rawDevice) ? rawDevice : 'cpu';
55
+ return {
56
+ enabled: (0, envUtils_1.getBooleanEnv)('INDEX_SERVER_SEMANTIC_ENABLED'),
57
+ model: process.env.INDEX_SERVER_SEMANTIC_MODEL || defaultValues_1.DEFAULT_SEMANTIC.MODEL,
58
+ cacheDir: (0, configUtils_1.toAbsolute)(process.env.INDEX_SERVER_SEMANTIC_CACHE_DIR, path_1.default.join(configUtils_1.CWD, dirConstants_1.DIR.DATA_MODELS)),
59
+ embeddingPath: (0, configUtils_1.toAbsolute)(process.env.INDEX_SERVER_EMBEDDING_PATH, path_1.default.join(configUtils_1.CWD, dirConstants_1.DIR.DATA_EMBEDDINGS)),
60
+ device,
61
+ localOnly: (0, envUtils_1.getBooleanEnv)('INDEX_SERVER_SEMANTIC_LOCAL_ONLY', true),
62
+ };
63
+ }
64
+ function parseMinimalConfig() {
65
+ return {
66
+ debugOrdering: (0, envUtils_1.getBooleanEnv)('INDEX_SERVER_MINIMAL_DEBUG'),
67
+ };
68
+ }
69
+ function parseBootstrapSeedConfig() {
70
+ return {
71
+ autoSeed: process.env.INDEX_SERVER_AUTO_SEED === undefined ? true : process.env.INDEX_SERVER_AUTO_SEED !== '0',
72
+ verbose: (0, envUtils_1.getBooleanEnv)('INDEX_SERVER_SEED_VERBOSE'),
73
+ };
74
+ }
75
+ function parseValidationConfig() {
76
+ return {
77
+ mode: (process.env.INDEX_SERVER_VALIDATION_MODE || 'zod').toLowerCase(),
78
+ };
79
+ }
80
+ function parseDynamicConfig() {
81
+ return {
82
+ dashboardConfig: {},
83
+ apiIntegration: {},
84
+ };
85
+ }
86
+ function parseGraphConfig() {
87
+ const includeRaw = process.env.INDEX_SERVER_GRAPH_INCLUDE_PRIMARY_EDGES;
88
+ const includePrimaryEdges = includeRaw === undefined ? true : (0, envUtils_1.parseBooleanEnv)(includeRaw, true);
89
+ const largeRaw = process.env.INDEX_SERVER_GRAPH_LARGE_CATEGORY_CAP;
90
+ let largeCategoryCap = Number.POSITIVE_INFINITY;
91
+ let explicitLargeCategoryEnv = false;
92
+ if (largeRaw && largeRaw.trim().length) {
93
+ const parsed = Number.parseInt(largeRaw, 10);
94
+ if (Number.isFinite(parsed) && parsed >= 0) {
95
+ largeCategoryCap = parsed;
96
+ }
97
+ explicitLargeCategoryEnv = true;
98
+ }
99
+ const explicitIncludePrimaryEnv = includeRaw !== undefined;
100
+ const signature = `${includePrimaryEdges ? 'P1' : 'P0'}:${explicitLargeCategoryEnv ? largeCategoryCap : 'INF'}`;
101
+ return {
102
+ includePrimaryEdges,
103
+ largeCategoryCap,
104
+ explicitIncludePrimaryEnv,
105
+ explicitLargeCategoryEnv,
106
+ signature,
107
+ };
108
+ }
109
+ function parseStorageConfig() {
110
+ const raw = (process.env.INDEX_SERVER_STORAGE_BACKEND || 'json').toLowerCase();
111
+ const backend = (raw === 'sqlite' ? 'sqlite' : 'json');
112
+ if (backend === 'sqlite') {
113
+ console.warn('[config] ⚠️ EXPERIMENTAL: SQLite storage backend selected. Limited testing has been performed. Use at your own risk.');
114
+ }
115
+ return {
116
+ backend,
117
+ sqlitePath: (0, configUtils_1.toAbsolute)(process.env.INDEX_SERVER_SQLITE_PATH, path_1.default.join(configUtils_1.CWD, dirConstants_1.DIR.DATA_SQLITE)),
118
+ sqliteWal: (0, envUtils_1.parseBooleanEnv)(process.env.INDEX_SERVER_SQLITE_WAL, true),
119
+ sqliteMigrateOnStart: (0, envUtils_1.parseBooleanEnv)(process.env.INDEX_SERVER_SQLITE_MIGRATE_ON_START, true),
120
+ };
121
+ }
@@ -0,0 +1,151 @@
1
+ import { LogLevel } from './configUtils';
2
+ import type { ServerConfig, LoggingConfig, MetricsConfig, AtomicFsConfig, PreflightConfig, TracingConfig } from './serverConfig';
3
+ import type { DashboardConfig } from './dashboardConfig';
4
+ import type { FeatureFlagsConfig, FeedbackConfig, MessagingConfig, SemanticConfig, MinimalConfig, BootstrapSeedConfig, ValidationConfig, DynamicConfig, GraphConfig, StorageConfig } from './featureConfig';
5
+ export type IndexMode = 'normal' | 'memoize' | 'memoize+hash' | 'reload' | 'reload+memo';
6
+ export type { LogLevel };
7
+ export type { MessagingConfig } from './featureConfig';
8
+ export type { StorageConfig } from './featureConfig';
9
+ interface TimingMap {
10
+ [key: string]: number;
11
+ }
12
+ interface BufferRingConfig {
13
+ append: boolean;
14
+ preload: boolean;
15
+ }
16
+ interface CoverageConfig {
17
+ hardMin?: number;
18
+ target?: number;
19
+ fastMode: boolean;
20
+ strictMode: boolean;
21
+ }
22
+ interface IndexReadRetriesConfig {
23
+ attempts: number;
24
+ backoffMs: number;
25
+ }
26
+ interface IndexGovernanceConfig {
27
+ trailingNewline: boolean;
28
+ hashHardeningEnabled: boolean;
29
+ hashCanonVariants: number;
30
+ hashImportSetSize: number;
31
+ }
32
+ interface IndexConfig {
33
+ mode: IndexMode;
34
+ baseDir: string;
35
+ reloadAlways: boolean;
36
+ memoize: boolean;
37
+ memoizeDisabledExplicitly: boolean;
38
+ memoizeHash: boolean;
39
+ normalizationLog?: string | boolean;
40
+ fileTrace: boolean;
41
+ eventSilent: boolean;
42
+ readRetries: IndexReadRetriesConfig;
43
+ usageFlushMs: number;
44
+ disableUsageClamp: boolean;
45
+ govHash: IndexGovernanceConfig;
46
+ maxFiles?: number;
47
+ loadWarningThreshold?: number;
48
+ /** Configurable warn/truncate/reject threshold for instruction body length (default 100000). */
49
+ bodyWarnLength: number;
50
+ /** Hard maximum body character length — schema reject ceiling, always 1MB. Not configurable. */
51
+ bodyMaxLength: number;
52
+ autoSplitOversized: boolean;
53
+ autoUsageTrack: boolean;
54
+ }
55
+ interface InstructionsManifestConfig {
56
+ writeEnabled: boolean;
57
+ fastload: boolean;
58
+ }
59
+ interface InstructionsCIContextConfig {
60
+ inCI: boolean;
61
+ githubActions: boolean;
62
+ tfBuild: boolean;
63
+ }
64
+ interface InstructionsAuditLogConfig {
65
+ enabled: boolean;
66
+ file?: string;
67
+ rawValue?: string;
68
+ usesDefault: boolean;
69
+ }
70
+ interface InstructionsListValidationConfig {
71
+ forceFullScan: boolean;
72
+ allowSampling: boolean;
73
+ effectiveSampleSize?: number;
74
+ sampleSeed?: number;
75
+ concurrency: number;
76
+ maxDurationMs: number;
77
+ }
78
+ interface InstructionsConfig {
79
+ workspaceId?: string;
80
+ agentId?: string;
81
+ canonicalDisable: boolean;
82
+ strictVisibility: boolean;
83
+ strictCreate: boolean;
84
+ strictRemove: boolean;
85
+ requireCategory: boolean;
86
+ traceQueryDiag: boolean;
87
+ manifest: InstructionsManifestConfig;
88
+ ciContext: InstructionsCIContextConfig;
89
+ auditLog: InstructionsAuditLogConfig;
90
+ listValidation: InstructionsListValidationConfig;
91
+ }
92
+ interface MutationConfig {
93
+ enabled: boolean;
94
+ dispatcherTiming: boolean;
95
+ maxBulkDelete: number;
96
+ backupBeforeBulkDelete: boolean;
97
+ autoBackupEnabled: boolean;
98
+ autoBackupIntervalMs: number;
99
+ autoBackupMaxCount: number;
100
+ }
101
+ export interface RuntimeConfig {
102
+ profile: string;
103
+ testMode: string | undefined;
104
+ index: IndexConfig;
105
+ mutationEnabled: boolean;
106
+ logLevel: LogLevel;
107
+ trace: Set<string>;
108
+ initFeatures: Set<string>;
109
+ bufferRing: BufferRingConfig;
110
+ timing: (key: string, fallback?: number) => number | undefined;
111
+ rawTiming: TimingMap;
112
+ coverage: CoverageConfig;
113
+ dashboard: DashboardConfig;
114
+ server: ServerConfig;
115
+ logging: LoggingConfig;
116
+ metrics: MetricsConfig;
117
+ instructions: InstructionsConfig;
118
+ tracing: TracingConfig;
119
+ mutation: MutationConfig;
120
+ featureFlags: FeatureFlagsConfig;
121
+ feedback: FeedbackConfig;
122
+ messaging: MessagingConfig;
123
+ semantic: SemanticConfig;
124
+ minimal: MinimalConfig;
125
+ bootstrapSeed: BootstrapSeedConfig;
126
+ atomicFs: AtomicFsConfig;
127
+ preflight: PreflightConfig;
128
+ validation: ValidationConfig;
129
+ dynamic: DynamicConfig;
130
+ graph: GraphConfig;
131
+ storage: StorageConfig;
132
+ }
133
+ /** Valid profile names supported by the wizard and runtime. */
134
+ export declare const VALID_PROFILES: readonly ["default", "enhanced", "experimental"];
135
+ export type ProfileName = typeof VALID_PROFILES[number];
136
+ /**
137
+ * Parse all environment variables and construct a fresh {@link RuntimeConfig} object.
138
+ * Prefer {@link getRuntimeConfig} for normal use — this function always re-parses.
139
+ * @returns Fully resolved runtime configuration object
140
+ */
141
+ export declare function loadRuntimeConfig(): RuntimeConfig;
142
+ /**
143
+ * Return the cached singleton {@link RuntimeConfig}, loading it on first call.
144
+ * @returns The application-wide runtime configuration
145
+ */
146
+ export declare function getRuntimeConfig(): RuntimeConfig;
147
+ /**
148
+ * Force a reload of the runtime configuration by discarding the cache and re-parsing all env vars.
149
+ * @returns The freshly loaded runtime configuration
150
+ */
151
+ export declare function reloadRuntimeConfig(): RuntimeConfig;