@uptimizr/collector-server 2.1.0 → 2.2.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 (135) hide show
  1. package/AGENTS.md +179 -6
  2. package/README.md +69 -0
  3. package/dist/__tests__/support/registryRequests.d.ts +2 -1
  4. package/dist/__tests__/support/registryRequests.d.ts.map +1 -1
  5. package/dist/__tests__/support/registryRequests.js +17 -1
  6. package/dist/__tests__/support/registryRequests.js.map +1 -1
  7. package/dist/__tests__/support/subscriptionFixtures.d.ts +63 -0
  8. package/dist/__tests__/support/subscriptionFixtures.d.ts.map +1 -0
  9. package/dist/__tests__/support/subscriptionFixtures.js +17 -0
  10. package/dist/__tests__/support/subscriptionFixtures.js.map +1 -0
  11. package/dist/agentReport.d.ts +256 -0
  12. package/dist/agentReport.d.ts.map +1 -0
  13. package/dist/agentReport.js +861 -0
  14. package/dist/agentReport.js.map +1 -0
  15. package/dist/app.d.ts +13 -0
  16. package/dist/app.d.ts.map +1 -1
  17. package/dist/app.js +112 -5
  18. package/dist/app.js.map +1 -1
  19. package/dist/audit.d.ts +5 -1
  20. package/dist/audit.d.ts.map +1 -1
  21. package/dist/audit.js +24 -4
  22. package/dist/audit.js.map +1 -1
  23. package/dist/auth.d.ts +41 -1
  24. package/dist/auth.d.ts.map +1 -1
  25. package/dist/auth.js +47 -0
  26. package/dist/auth.js.map +1 -1
  27. package/dist/cli.js +99 -2
  28. package/dist/cli.js.map +1 -1
  29. package/dist/clickhouseStore.d.ts.map +1 -1
  30. package/dist/clickhouseStore.js +44 -2
  31. package/dist/clickhouseStore.js.map +1 -1
  32. package/dist/config.d.ts +49 -0
  33. package/dist/config.d.ts.map +1 -1
  34. package/dist/config.js +21 -0
  35. package/dist/config.js.map +1 -1
  36. package/dist/connectionLimiter.d.ts +23 -0
  37. package/dist/connectionLimiter.d.ts.map +1 -0
  38. package/dist/connectionLimiter.js +24 -0
  39. package/dist/connectionLimiter.js.map +1 -0
  40. package/dist/duckdbStore.d.ts.map +1 -1
  41. package/dist/duckdbStore.js +44 -1
  42. package/dist/duckdbStore.js.map +1 -1
  43. package/dist/internalDispatch.d.ts +36 -0
  44. package/dist/internalDispatch.d.ts.map +1 -0
  45. package/dist/internalDispatch.js +50 -0
  46. package/dist/internalDispatch.js.map +1 -0
  47. package/dist/memoryStore.d.ts.map +1 -1
  48. package/dist/memoryStore.js +314 -1
  49. package/dist/memoryStore.js.map +1 -1
  50. package/dist/mssqlStore.d.ts.map +1 -1
  51. package/dist/mssqlStore.js +44 -2
  52. package/dist/mssqlStore.js.map +1 -1
  53. package/dist/postgresStore.d.ts.map +1 -1
  54. package/dist/postgresStore.js +44 -2
  55. package/dist/postgresStore.js.map +1 -1
  56. package/dist/projectMetadata.d.ts +82 -0
  57. package/dist/projectMetadata.d.ts.map +1 -0
  58. package/dist/projectMetadata.js +50 -0
  59. package/dist/projectMetadata.js.map +1 -0
  60. package/dist/routes/context.d.ts +135 -0
  61. package/dist/routes/context.d.ts.map +1 -0
  62. package/dist/routes/context.js +306 -0
  63. package/dist/routes/context.js.map +1 -0
  64. package/dist/routes/insights.d.ts +36 -0
  65. package/dist/routes/insights.d.ts.map +1 -0
  66. package/dist/routes/insights.js +810 -0
  67. package/dist/routes/insights.js.map +1 -0
  68. package/dist/routes/live.d.ts +8 -0
  69. package/dist/routes/live.d.ts.map +1 -1
  70. package/dist/routes/live.js +8 -7
  71. package/dist/routes/live.js.map +1 -1
  72. package/dist/routes/mcp.d.ts +36 -0
  73. package/dist/routes/mcp.d.ts.map +1 -0
  74. package/dist/routes/mcp.js +262 -0
  75. package/dist/routes/mcp.js.map +1 -0
  76. package/dist/routes/meta.d.ts +16 -2
  77. package/dist/routes/meta.d.ts.map +1 -1
  78. package/dist/routes/meta.js +699 -10
  79. package/dist/routes/meta.js.map +1 -1
  80. package/dist/routes/metadata.d.ts +31 -0
  81. package/dist/routes/metadata.d.ts.map +1 -0
  82. package/dist/routes/metadata.js +163 -0
  83. package/dist/routes/metadata.js.map +1 -0
  84. package/dist/routes/narrative.d.ts +36 -0
  85. package/dist/routes/narrative.d.ts.map +1 -0
  86. package/dist/routes/narrative.js +95 -0
  87. package/dist/routes/narrative.js.map +1 -0
  88. package/dist/routes/panels.d.ts +44 -0
  89. package/dist/routes/panels.d.ts.map +1 -0
  90. package/dist/routes/panels.js +108 -0
  91. package/dist/routes/panels.js.map +1 -0
  92. package/dist/routes/query-dsl.d.ts +50 -0
  93. package/dist/routes/query-dsl.d.ts.map +1 -0
  94. package/dist/routes/query-dsl.js +359 -0
  95. package/dist/routes/query-dsl.js.map +1 -0
  96. package/dist/routes/query.d.ts +36 -0
  97. package/dist/routes/query.d.ts.map +1 -1
  98. package/dist/routes/query.js +101 -13
  99. package/dist/routes/query.js.map +1 -1
  100. package/dist/routes/subscriptions.d.ts +52 -0
  101. package/dist/routes/subscriptions.d.ts.map +1 -0
  102. package/dist/routes/subscriptions.js +290 -0
  103. package/dist/routes/subscriptions.js.map +1 -0
  104. package/dist/store.d.ts +113 -2
  105. package/dist/store.d.ts.map +1 -1
  106. package/dist/subscriptions/cli.d.ts +36 -0
  107. package/dist/subscriptions/cli.d.ts.map +1 -0
  108. package/dist/subscriptions/cli.js +143 -0
  109. package/dist/subscriptions/cli.js.map +1 -0
  110. package/dist/subscriptions/delivery.d.ts +101 -0
  111. package/dist/subscriptions/delivery.d.ts.map +1 -0
  112. package/dist/subscriptions/delivery.js +165 -0
  113. package/dist/subscriptions/delivery.js.map +1 -0
  114. package/dist/subscriptions/evaluate.d.ts +119 -0
  115. package/dist/subscriptions/evaluate.d.ts.map +1 -0
  116. package/dist/subscriptions/evaluate.js +326 -0
  117. package/dist/subscriptions/evaluate.js.map +1 -0
  118. package/dist/subscriptions/scheduler.d.ts +97 -0
  119. package/dist/subscriptions/scheduler.d.ts.map +1 -0
  120. package/dist/subscriptions/scheduler.js +332 -0
  121. package/dist/subscriptions/scheduler.js.map +1 -0
  122. package/dist/subscriptions/stream.d.ts +40 -0
  123. package/dist/subscriptions/stream.d.ts.map +1 -0
  124. package/dist/subscriptions/stream.js +38 -0
  125. package/dist/subscriptions/stream.js.map +1 -0
  126. package/dist/version.d.ts +3 -0
  127. package/dist/version.d.ts.map +1 -0
  128. package/dist/version.js +25 -0
  129. package/dist/version.js.map +1 -0
  130. package/dist/webhookSignature.d.ts +64 -0
  131. package/dist/webhookSignature.d.ts.map +1 -0
  132. package/dist/webhookSignature.js +91 -0
  133. package/dist/webhookSignature.js.map +1 -0
  134. package/llms.txt +38 -1
  135. package/package.json +17 -14
package/dist/cli.js CHANGED
@@ -21,6 +21,12 @@ import { createOwnerApiKey, openCliStore, renderEnv, resolveCliStoreKind, } from
21
21
  * rate limit (#309, ADR 0051 §7).
22
22
  * - `migrate` — apply store migrations.
23
23
  * - `regions set|get` — declare / read a scene's named regions (ADR 0051 §2).
24
+ * - `agent report` — run a read-only analytics agent once and write a
25
+ * Markdown report (#312, ADR 0051 §6). Implemented in
26
+ * `agentReport.ts` and imported lazily, so the agent
27
+ * stack is never loaded by `serve`.
28
+ * - `subscriptions …` — list / add / remove / dry-run the project's
29
+ * conditional subscriptions (#311, ADR 0051 §6).
24
30
  *
25
31
  * Every command targets the store selected by `COLLECTOR_STORE` — the OSS
26
32
  * DuckDB default (no Docker, no external database; ADR 0020), or the optional
@@ -354,6 +360,26 @@ async function cmdRegionsGet(args) {
354
360
  await db.close();
355
361
  }
356
362
  }
363
+ /**
364
+ * Dispatch the `agent` sub-namespace. Today it has one command, `report`; the
365
+ * namespace exists so later agent-side commands land beside it rather than at
366
+ * the top level.
367
+ *
368
+ * The implementation lives in `agentReport.ts` and is imported **lazily**: it
369
+ * pulls in `@uptimizr/agent-core` (the tool catalog and the provider adapters),
370
+ * which `serve`, `init` and the store commands have no business loading.
371
+ */
372
+ async function cmdAgent(args) {
373
+ const [sub, ...rest] = args;
374
+ if (sub !== "report") {
375
+ console.error(`Unknown agent command ${JSON.stringify(sub ?? "")}. ` +
376
+ "Expected: uptimizr agent report --skill <name> (see --list-skills).");
377
+ return 1;
378
+ }
379
+ loadLocalEnv();
380
+ const { runAgentReport } = await import("./agentReport.js");
381
+ return runAgentReport(rest);
382
+ }
357
383
  /** Dispatch the `regions` sub-namespace (`set` / `get`). */
358
384
  async function cmdRegions(args) {
359
385
  const [sub, ...rest] = args;
@@ -370,6 +396,51 @@ async function cmdRegions(args) {
370
396
  "uptimizr regions get <sceneId>");
371
397
  }
372
398
  }
399
+ /**
400
+ * Dispatch the `subscriptions` sub-namespace (#311, ADR 0051 §6).
401
+ *
402
+ * Thin by design: every implementation lives in `subscriptions/cli.ts`, which is
403
+ * where the store is opened and the evaluator is called, so this file stays a
404
+ * parser and a switch. Loaded lazily — the subscriptions module pulls in the
405
+ * evaluator and the whole store factory, which `uptimizr init` has no use for.
406
+ */
407
+ async function cmdSubscriptions(args) {
408
+ loadLocalEnv();
409
+ const [sub, ...rest] = args;
410
+ const projectId = resolveProjectId(rest);
411
+ const positional = positionalArgs(rest, ["file", "project"]);
412
+ const cli = await import("./subscriptions/cli.js");
413
+ switch (sub) {
414
+ case "list":
415
+ await cli.cmdSubscriptionsList(projectId);
416
+ return;
417
+ case "add": {
418
+ const file = flagArg(rest, "file");
419
+ if (!file)
420
+ throw new Error("`uptimizr subscriptions add` needs --file <sub.json>.");
421
+ await cli.cmdSubscriptionsAdd(projectId, file);
422
+ return;
423
+ }
424
+ case "remove": {
425
+ const id = positional[0];
426
+ if (!id)
427
+ throw new Error("`uptimizr subscriptions remove` needs a subscription id.");
428
+ await cli.cmdSubscriptionsRemove(projectId, id);
429
+ return;
430
+ }
431
+ case "test": {
432
+ const id = positional[0];
433
+ if (!id)
434
+ throw new Error("`uptimizr subscriptions test` needs a subscription id.");
435
+ await cli.cmdSubscriptionsTest(projectId, id);
436
+ return;
437
+ }
438
+ default:
439
+ throw new Error(`Unknown subscriptions command ${JSON.stringify(sub ?? "")}. ` +
440
+ "Expected: uptimizr subscriptions list | add --file <sub.json> | " +
441
+ "remove <id> | test <id>");
442
+ }
443
+ }
373
444
  function printUsage() {
374
445
  console.error([
375
446
  "uptimizr — self-host the OSS 3D-analytics collector (DuckDB by default, no Docker).",
@@ -384,6 +455,18 @@ function printUsage() {
384
455
  " declare a scene's named regions (replaces the set)",
385
456
  " uptimizr regions get <sceneId>",
386
457
  " print a scene's named regions as JSON",
458
+ " uptimizr agent report --skill <name>",
459
+ " run a read-only analytics agent once and write a",
460
+ " Markdown report (see: uptimizr agent report --help)",
461
+ " uptimizr subscriptions list list this project's conditional subscriptions",
462
+ " uptimizr subscriptions add --file <sub.json>",
463
+ " store a conditional subscription (ADR 0051 §6)",
464
+ " uptimizr subscriptions remove <id>",
465
+ " delete a subscription and its firing log",
466
+ " uptimizr subscriptions test <id>",
467
+ " evaluate one now and print why it would (not) fire;",
468
+ " never delivers — use POST /api/v1/subscriptions/:id/test",
469
+ " ?deliver=true to exercise a webhook receiver",
387
470
  " uptimizr help show this help",
388
471
  "",
389
472
  "`init` / `new-project` mint the operator's own key with query, query:raw and annotate —",
@@ -398,8 +481,8 @@ function printUsage() {
398
481
  " --rate-limit-max <n> per-key request budget (needs --rate-limit-window-ms)",
399
482
  " --rate-limit-window-ms <ms> per-key rate-limit window (needs --rate-limit-max)",
400
483
  "",
401
- "The regions commands target a project: pass --project <projectId> or set",
402
- "UPTIMIZR_PROJECT_ID. The file is either a bare array of",
484
+ "The regions and subscriptions commands target a project: pass --project <projectId> or",
485
+ "set UPTIMIZR_PROJECT_ID. The file is either a bare array of",
403
486
  "{ id, label, bounds: [minX,minY,minZ,maxX,maxY,maxZ], description? } or a",
404
487
  '{ "regions": [...] } envelope.',
405
488
  "",
@@ -407,6 +490,11 @@ function printUsage() {
407
490
  "clickhouse), using the same connection variables as `serve` (DUCKDB_PATH, POSTGRES_URL,",
408
491
  "MSSQL_URL, CLICKHOUSE_*). Unset = duckdb.",
409
492
  "",
493
+ "`agent report` runs the headless agent loop in THIS process against the collector's",
494
+ "query API, with the provider you configure in the environment (never persisted).",
495
+ "Scheduling is yours — cron, a systemd timer or a GitHub Action. See",
496
+ "`uptimizr agent report --help` for the flags, the environment and the exit codes.",
497
+ "",
410
498
  "Quick start: uptimizr init && uptimizr serve",
411
499
  ].join("\n"));
412
500
  }
@@ -435,6 +523,15 @@ async function main() {
435
523
  case "regions":
436
524
  await cmdRegions(rest);
437
525
  return;
526
+ case "agent": {
527
+ const code = await cmdAgent(rest);
528
+ if (code !== 0)
529
+ process.exit(code);
530
+ return;
531
+ }
532
+ case "subscriptions":
533
+ await cmdSubscriptions(rest);
534
+ return;
438
535
  case "help":
439
536
  case "--help":
440
537
  case "-h":
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"clickhouseStore.d.ts","sourceRoot":"","sources":["../src/clickhouseStore.ts"],"names":[],"mappings":"AAyJA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,cAAc,CAAC,CAgMrE"}
1
+ {"version":3,"file":"clickhouseStore.d.ts","sourceRoot":"","sources":["../src/clickhouseStore.ts"],"names":[],"mappings":"AAsLA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,qBAAqB,IAAI,OAAO,CAAC,cAAc,CAAC,CA0PrE"}
@@ -1,5 +1,5 @@
1
- import { buildCameraDirectionHeatmap, buildViewCoverageHistogram, buildCameraDistance, buildCameraPositionHeatmap, buildClickGazeRay, buildDeadClicks, buildRageClicks, buildHoverDwell, buildCompileStalls, buildArPlacementTimeToPlace, buildArPlacementAttempts, buildArPlacementSurfaces, buildResourceSummary, buildCapabilityChanges, buildCameraGestures, buildDistinctScenes, buildEventTypeCounts, buildFlowHeatmap, buildFunnel, buildSceneRetention, buildLoadBounceFunnel, buildVariantLeaderboard, buildListSessions, buildNavigationStats, buildBacktrackRatio, buildXrRotationRate, buildXrSourceUsage, buildXrAbandonment, buildXrLocomotionComfort, buildTrackingQuality, buildInteractionsBySource, buildMeshDwell, buildMeshBlindSpots, buildMeshInteractionKinds, buildReachability, buildPerfSummary, buildPerfDistribution, buildFpsHistogram, buildFrameTimePercentiles, buildJankRate, buildPerfChurn, buildPerfByDevice, buildPerfByScene, buildResourcePercentiles, buildStabilityCounts, buildGraphicsDiagnosticCounts, buildErrorHeatmap, buildBoundaryHeatmap, buildBoundaryHeatmapStats, buildBoundaryContacts, buildRenderingTechnology, buildPointerHeatmap, buildMeshUvHeatmap, buildSceneCoverage, buildPerfHeatmap, buildSessionTrajectory, buildAggregateTrajectories, buildRenderScaleTruth, buildTimeseries, buildTopMeshes, buildTopMeshesBySource, buildTopMeshesTrend, buildTopInputActions, buildWorldHeatmap, buildWorldHeatmapStats, buildGazeHeatmap, buildGazeHeatmapStats, clickhouseDialect, readDbSettings, } from "@uptimizr/db";
2
- import { createClickhouseClient, migrateClickhouse, runClickhouseQuery, insertEvents as chInsertEvents, getSessionEvents as chGetSessionEvents, streamSessionEvents as chStreamSessionEvents, getSessionMeta as chGetSessionMeta, getProject as chGetProject, resolveApiKey as chResolveApiKey, recordAudit as chRecordAudit, listAudit as chListAudit, pruneAudit as chPruneAudit, upsertSceneProxy as chUpsertSceneProxy, getSceneRepresentation as chGetSceneRepresentation, listSceneRepresentations as chListSceneRepresentations, putSceneRegions as chPutSceneRegions, getSceneRegions as chGetSceneRegions, listSceneRegions as chListSceneRegions, } from "@uptimizr/db-clickhouse";
1
+ import { buildCameraDirectionHeatmap, buildViewCoverageHistogram, buildCameraDistance, buildCameraPositionHeatmap, buildClickGazeRay, buildCustomEventVocabulary, buildDeadClicks, buildRageClicks, buildHoverDwell, buildCompileStalls, buildArPlacementTimeToPlace, buildArPlacementAttempts, buildArPlacementSurfaces, buildResourceSummary, buildCapabilityChanges, buildCameraGestures, buildDistinctScenes, buildEventTypeCounts, buildMetricBuckets, toMetricBucketRows, buildFlowHeatmap, buildFunnel, buildSceneRetention, buildLoadBounceFunnel, buildVariantLeaderboard, buildListSessions, buildNavigationStats, buildBacktrackRatio, buildXrRotationRate, buildXrSourceUsage, buildXrAbandonment, buildXrLocomotionComfort, buildTrackingQuality, buildInteractionsBySource, buildMeshDwell, buildMeshBlindSpots, buildMeshInteractionKinds, buildReachability, buildPerfSummary, buildPerfDistribution, buildFpsHistogram, buildFrameTimePercentiles, buildJankRate, buildPerfChurn, buildPerfByDevice, buildPerfByScene, buildResourcePercentiles, buildStabilityCounts, buildGraphicsDiagnosticCounts, buildErrorHeatmap, buildBoundaryHeatmap, buildBoundaryHeatmapStats, buildBoundaryContacts, buildRenderingTechnology, buildPointerHeatmap, buildMeshUvHeatmap, buildSceneCoverage, buildPerfHeatmap, buildSessionTrajectory, buildAggregateTrajectories, buildRenderScaleTruth, buildTimeseries, buildTopMeshes, buildTopMeshesBySource, buildTopMeshesTrend, buildTopInputActions, foldCustomEventVocabulary, buildWorldHeatmap, buildWorldHeatmapStats, buildGazeHeatmap, buildGazeHeatmapStats, clickhouseDialect, compileMetric, readDbSettings, } from "@uptimizr/db";
2
+ import { createClickhouseClient, migrateClickhouse, runClickhouseQuery, insertEvents as chInsertEvents, getSessionEvents as chGetSessionEvents, streamSessionEvents as chStreamSessionEvents, getSessionMeta as chGetSessionMeta, getProject as chGetProject, resolveApiKey as chResolveApiKey, recordAudit as chRecordAudit, listAudit as chListAudit, pruneAudit as chPruneAudit, upsertSceneProxy as chUpsertSceneProxy, getSceneRepresentation as chGetSceneRepresentation, listSceneRepresentations as chListSceneRepresentations, putSceneRegions as chPutSceneRegions, listSubscriptions as chListSubscriptions, listEnabledSubscriptions as chListEnabledSubscriptions, getSubscription as chGetSubscription, createSubscription as chCreateSubscription, setSubscriptionEnabled as chSetSubscriptionEnabled, deleteSubscription as chDeleteSubscription, recordSubscriptionOutcome as chRecordSubscriptionOutcome, getWebhookSecret as chGetWebhookSecret, recordSubscriptionEvent as chRecordSubscriptionEvent, listSubscriptionEvents as chListSubscriptionEvents, getSceneRegions as chGetSceneRegions, listSceneRegions as chListSceneRegions, createAnnotation as chCreateAnnotation, listAnnotations as chListAnnotations, deleteAnnotation as chDeleteAnnotation, putGlossaryEntry as chPutGlossaryEntry, listGlossary as chListGlossary, deleteGlossaryEntry as chDeleteGlossaryEntry, createSavedAnalysis as chCreateSavedAnalysis, listSavedAnalyses as chListSavedAnalyses, deleteSavedAnalysis as chDeleteSavedAnalysis, createPanelSpec as chCreatePanelSpec, listPanelSpecs as chListPanelSpecs, updatePanelSpec as chUpdatePanelSpec, deletePanelSpec as chDeletePanelSpec, } from "@uptimizr/db-clickhouse";
3
3
  /**
4
4
  * Optional single-tenant ClickHouse store (ADR 0020): the scale path for
5
5
  * self-hosters who outgrow DuckDB's single read-write process. It carries the
@@ -20,12 +20,22 @@ export async function createClickhouseStore() {
20
20
  await migrateClickhouse(ch, settings);
21
21
  const d = clickhouseDialect;
22
22
  return {
23
+ engine: "clickhouse",
23
24
  resolveApiKey: (key) => chResolveApiKey(ch, key),
24
25
  recordAudit: (entry) => chRecordAudit(ch, entry),
25
26
  listAudit: (projectId, opts) => chListAudit(ch, projectId, opts),
26
27
  pruneAudit: (cutoffMs) => chPruneAudit(ch, cutoffMs),
27
28
  projectExists: async (projectId) => (await chGetProject(ch, projectId)) !== null,
28
29
  insertEvents: (events) => chInsertEvents(ch, [...events]),
30
+ // Query DSL v1 (ADR 0051 §3): any registry metric, compiled onto its own
31
+ // aggregation builder and run through the same ClickHouse path — and therefore
32
+ // the same parity coverage and the same numeric coercion — as the canned
33
+ // aggregates below.
34
+ runMetric: (projectId, metric, options) => runClickhouseQuery(ch, compileMetric(metric, projectId, options, d)),
35
+ describeMetric: (projectId, metric, options) => ({
36
+ dialect: d.name,
37
+ spec: compileMetric(metric, projectId, options, d),
38
+ }),
29
39
  listSessions: (projectId, opts = {}) => runClickhouseQuery(ch, buildListSessions(projectId, opts, d)),
30
40
  pointerHeatmap: (projectId, opts = {}) => runClickhouseQuery(ch, buildPointerHeatmap(projectId, opts, d)),
31
41
  meshUvHeatmap: (projectId, opts = {}) => runClickhouseQuery(ch, buildMeshUvHeatmap(projectId, opts, d)),
@@ -95,9 +105,18 @@ export async function createClickhouseStore() {
95
105
  trackingQuality: (projectId, opts = {}) => runClickhouseQuery(ch, buildTrackingQuality(projectId, opts, d)),
96
106
  interactionsBySource: (projectId, opts = {}) => runClickhouseQuery(ch, buildInteractionsBySource(projectId, opts, d)),
97
107
  topInputActions: (projectId, opts = {}) => runClickhouseQuery(ch, buildTopInputActions(projectId, opts, d)),
108
+ // Discovered custom-event vocabulary (ADR 0051 §5): the SQL counts and
109
+ // samples, the pure fold turns the sampled payloads into prop types. The
110
+ // raw payload stops here and never reaches a route.
111
+ customEventVocabulary: async (projectId, opts = {}) => foldCustomEventVocabulary(await runClickhouseQuery(ch, buildCustomEventVocabulary(projectId, opts, d))),
98
112
  scenes: (projectId, opts = {}) => runClickhouseQuery(ch, buildDistinctScenes(projectId, opts, d)),
99
113
  timeseries: (projectId, opts = {}) => runClickhouseQuery(ch, buildTimeseries(projectId, opts, d)),
100
114
  eventTypeCounts: (projectId, opts = {}) => runClickhouseQuery(ch, buildEventTypeCounts(projectId, opts, d)),
115
+ // The one bucket series behind `baseline` and `movers` (ADR 0051 §4). The
116
+ // spec carries no registry metric of its own, so the store edge has no row
117
+ // schema to coerce it against — `toMetricBucketRows` parses the numbers,
118
+ // which is what keeps the engines that string-encode 64-bit counts honest.
119
+ metricBuckets: async (projectId, opts) => toMetricBucketRows(await runClickhouseQuery(ch, buildMetricBuckets(projectId, opts, d))),
101
120
  funnel: (projectId, opts) => runClickhouseQuery(ch, buildFunnel(projectId, opts, d)),
102
121
  sceneRetention: (projectId, opts) => runClickhouseQuery(ch, buildSceneRetention(projectId, opts, d)),
103
122
  loadBounceFunnel: (projectId, opts = {}) => runClickhouseQuery(ch, buildLoadBounceFunnel(projectId, opts, d)),
@@ -111,6 +130,29 @@ export async function createClickhouseStore() {
111
130
  putSceneRegions: (projectId, sceneId, regions) => chPutSceneRegions(ch, projectId, sceneId, regions),
112
131
  getSceneRegions: (projectId, sceneId) => chGetSceneRegions(ch, projectId, sceneId),
113
132
  listSceneRegions: (projectId) => chListSceneRegions(ch, projectId),
133
+ createAnnotation: (projectId, input) => chCreateAnnotation(ch, projectId, input),
134
+ listAnnotations: (projectId, opts) => chListAnnotations(ch, projectId, opts),
135
+ deleteAnnotation: (projectId, id) => chDeleteAnnotation(ch, projectId, id),
136
+ putGlossaryEntry: (projectId, input) => chPutGlossaryEntry(ch, projectId, input),
137
+ listGlossary: (projectId, opts) => chListGlossary(ch, projectId, opts),
138
+ deleteGlossaryEntry: (projectId, term) => chDeleteGlossaryEntry(ch, projectId, term),
139
+ createSavedAnalysis: (projectId, input) => chCreateSavedAnalysis(ch, projectId, input),
140
+ listSavedAnalyses: (projectId, opts) => chListSavedAnalyses(ch, projectId, opts),
141
+ deleteSavedAnalysis: (projectId, id) => chDeleteSavedAnalysis(ch, projectId, id),
142
+ createPanelSpec: (projectId, input) => chCreatePanelSpec(ch, projectId, input),
143
+ listPanelSpecs: (projectId, opts) => chListPanelSpecs(ch, projectId, opts),
144
+ updatePanelSpec: (projectId, id, input) => chUpdatePanelSpec(ch, projectId, id, input),
145
+ deletePanelSpec: (projectId, id) => chDeletePanelSpec(ch, projectId, id),
146
+ listSubscriptions: (projectId) => chListSubscriptions(ch, projectId),
147
+ listEnabledSubscriptions: (limit) => chListEnabledSubscriptions(ch, limit),
148
+ getSubscription: (projectId, id) => chGetSubscription(ch, projectId, id),
149
+ createSubscription: (projectId, sub) => chCreateSubscription(ch, projectId, sub),
150
+ setSubscriptionEnabled: (projectId, id, enabled) => chSetSubscriptionEnabled(ch, projectId, id, enabled),
151
+ deleteSubscription: (projectId, id) => chDeleteSubscription(ch, projectId, id),
152
+ recordSubscriptionOutcome: (projectId, id, outcome) => chRecordSubscriptionOutcome(ch, projectId, id, outcome),
153
+ getWebhookSecret: (projectId, id) => chGetWebhookSecret(ch, projectId, id),
154
+ recordSubscriptionEvent: (entry) => chRecordSubscriptionEvent(ch, entry),
155
+ listSubscriptionEvents: (projectId, id, opts) => chListSubscriptionEvents(ch, projectId, id, opts),
114
156
  async close() {
115
157
  await ch.close();
116
158
  },
@@ -1 +1 @@
1
- {"version":3,"file":"clickhouseStore.js","sourceRoot":"","sources":["../src/clickhouseStore.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"clickhouseStore.js","sourceRoot":"","sources":["../src/clickhouseStore.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -61,6 +61,55 @@ export interface CollectorConfig {
61
61
  * on to audit every authenticated request without exception.
62
62
  */
63
63
  auditDashboardRequests: boolean;
64
+ /**
65
+ * Serve MCP over Streamable HTTP at `/mcp` (ADR 0051 §7). **Off by default**:
66
+ * it is an additional authenticated, long-lived surface, so an operator opts
67
+ * into it rather than discovering it. When off the route is not registered at
68
+ * all — `/mcp` simply 404s.
69
+ */
70
+ mcpHttpEnabled: boolean;
71
+ /**
72
+ * Max concurrent MCP sessions across the collector, the `/mcp` equivalent of
73
+ * {@link liveMaxConnections}. Each session holds an MCP server and may hold an
74
+ * open SSE stream, so the count is bounded; a request that would open the
75
+ * (cap + 1)-th session is refused with `503`.
76
+ */
77
+ mcpMaxSessions: number;
78
+ /**
79
+ * How long an MCP session may go without a request before it is closed and
80
+ * evicted, in ms. Streamable HTTP has no keep-alive a server can rely on —
81
+ * a client that disappears without `DELETE /mcp` would otherwise hold its slot
82
+ * forever.
83
+ */
84
+ mcpSessionTtlMs: number;
85
+ /**
86
+ * Run the conditional-subscription scheduler (#311, ADR 0051 §6). **On by
87
+ * default**, and free until a project actually has an enabled subscription:
88
+ * the scheduler's whole startup cost is one store read, and it schedules
89
+ * nothing when that read comes back empty. Set `COLLECTOR_SUBSCRIPTIONS=0` to
90
+ * keep the API (create, list, test) while running no timers at all — the right
91
+ * setting when several collector instances share one database and only one of
92
+ * them should evaluate.
93
+ */
94
+ subscriptions: boolean;
95
+ /**
96
+ * How many subscription evaluations may run at once (default 4). Each is one
97
+ * grouped store read, so this is the knob that keeps a hundred standing
98
+ * subscriptions from behaving like a hundred concurrent dashboard users.
99
+ */
100
+ subscriptionsMaxConcurrent: number;
101
+ /**
102
+ * Hosts a subscription webhook may POST to (`COLLECTOR_WEBHOOK_ALLOWED_HOSTS`,
103
+ * comma-separated; `*` allows any host).
104
+ *
105
+ * **Empty by default, which disables webhook egress entirely.** A subscription
106
+ * is created over HTTP by an `annotate`-capable key, so its URL is
107
+ * request-controlled input to an outbound request — the scheme check in
108
+ * `parseWebhookUrl` is not on its own an SSRF boundary. Naming the hosts is
109
+ * the operator's explicit consent to reach them; until then a firing is still
110
+ * recorded and fanned out over SSE, and nothing leaves the process.
111
+ */
112
+ webhookAllowedHosts: string[];
64
113
  /**
65
114
  * Absolute path to a pre-built static dashboard (`out/`) to serve as an
66
115
  * all-in-one bundle. Unset (the default) keeps the collector headless.
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,kEAAkE;IAClE,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uFAAuF;IACvF,yBAAyB,EAAE,OAAO,CAAC;IACnC,oEAAoE;IACpE,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,eAAe,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,0BAA0B,EAAE,OAAO,CAAC;IACpC,mDAAmD;IACnD,cAAc,EAAE,MAAM,CAAC;IACvB,uEAAuE;IACvE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,0EAA0E;IAC1E,sBAAsB,EAAE,MAAM,CAAC;IAC/B,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iFAAiF;IACjF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sCAAsC;IACtC,uBAAuB,EAAE,MAAM,CAAC;IAChC;;;;;;;OAOG;IACH,UAAU,EAAE,OAAO,GAAG,MAAM,CAAC;IAC7B,oFAAoF;IACpF,SAAS,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,OAAO,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC1B;;;;OAIG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;;;;OAKG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAChC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AAqC9C,wBAAgB,UAAU,CAAC,GAAG,GAAE,GAAiB,GAAG,eAAe,CAkClE"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAEA;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,wEAAwE;IACxE,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,kEAAkE;IAClE,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uFAAuF;IACvF,yBAAyB,EAAE,OAAO,CAAC;IACnC,oEAAoE;IACpE,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,eAAe,EAAE,MAAM,CAAC;IACxB;;;;OAIG;IACH,0BAA0B,EAAE,OAAO,CAAC;IACpC,mDAAmD;IACnD,cAAc,EAAE,MAAM,CAAC;IACvB,uEAAuE;IACvE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,0EAA0E;IAC1E,sBAAsB,EAAE,MAAM,CAAC;IAC/B,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC;IACrB,+BAA+B;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iFAAiF;IACjF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sCAAsC;IACtC,uBAAuB,EAAE,MAAM,CAAC;IAChC;;;;;;;OAOG;IACH,UAAU,EAAE,OAAO,GAAG,MAAM,CAAC;IAC7B,oFAAoF;IACpF,SAAS,EAAE,MAAM,CAAC;IAClB,sFAAsF;IACtF,OAAO,EAAE,QAAQ,GAAG,KAAK,CAAC;IAC1B;;;;OAIG;IACH,kBAAkB,EAAE,MAAM,CAAC;IAC3B;;;;;OAKG;IACH,sBAAsB,EAAE,OAAO,CAAC;IAChC;;;;;OAKG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;;;;OAKG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,eAAe,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,aAAa,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,0BAA0B,EAAE,MAAM,CAAC;IACnC;;;;;;;;;;OAUG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,KAAK,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;AA+C9C,wBAAgB,UAAU,CAAC,GAAG,GAAE,GAAiB,GAAG,eAAe,CAiDlE"}
package/dist/config.js CHANGED
@@ -2,6 +2,15 @@ import { resolve } from "node:path";
2
2
  function bool(value) {
3
3
  return value === "1" || value?.toLowerCase() === "true";
4
4
  }
5
+ /**
6
+ * Read a strictly positive numeric setting, falling back to `fallback` when it
7
+ * is unset, unparseable or non-positive. Used for the caps a zero or a typo
8
+ * must not silently turn into "no sessions allowed".
9
+ */
10
+ function positive(value, fallback) {
11
+ const n = Number(value);
12
+ return Number.isFinite(n) && n > 0 ? n : fallback;
13
+ }
5
14
  /**
6
15
  * Parse `COLLECTOR_TRUST_PROXY` into a value Fastify's `trustProxy` accepts:
7
16
  * a boolean, or an IP/subnet/comma-separated list passed through verbatim.
@@ -63,6 +72,18 @@ export function loadConfig(env = process.env) {
63
72
  cspMode: env.COLLECTOR_CSP === "off" ? "off" : "strict",
64
73
  auditRetentionDays: Math.max(0, Number(env.AUDIT_RETENTION_DAYS ?? 30) || 0),
65
74
  auditDashboardRequests: bool(env.AUDIT_DASHBOARD_REQUESTS),
75
+ mcpHttpEnabled: bool(env.COLLECTOR_MCP_HTTP),
76
+ mcpMaxSessions: positive(env.COLLECTOR_MCP_MAX_SESSIONS, 50),
77
+ mcpSessionTtlMs: positive(env.COLLECTOR_MCP_SESSION_TTL_MS, 1_800_000),
78
+ // Default on: an operator who never creates a subscription pays one store
79
+ // read at boot, and `0`/`false` turns the scheduler off without touching the
80
+ // API surface.
81
+ subscriptions: env.COLLECTOR_SUBSCRIPTIONS == null ? true : bool(env.COLLECTOR_SUBSCRIPTIONS),
82
+ subscriptionsMaxConcurrent: Math.max(1, Number(env.COLLECTOR_SUBSCRIPTIONS_MAX_CONCURRENT ?? 4) || 4),
83
+ webhookAllowedHosts: (env.COLLECTOR_WEBHOOK_ALLOWED_HOSTS ?? "")
84
+ .split(",")
85
+ .map((s) => s.trim())
86
+ .filter(Boolean),
66
87
  dashboardDir: env.COLLECTOR_DASHBOARD_DIR ? resolve(env.COLLECTOR_DASHBOARD_DIR) : undefined,
67
88
  };
68
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA2HpC,SAAS,IAAI,CAAC,KAAyB;IACrC,OAAO,KAAK,KAAK,GAAG,IAAI,KAAK,EAAE,WAAW,EAAE,KAAK,MAAM,CAAC;AAC1D,CAAC;AAED;;;;GAIG;AACH,SAAS,QAAQ,CAAC,KAAyB,EAAE,QAAgB;IAC3D,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IACxB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,SAAS,eAAe,CAAC,KAAyB;IAChD,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,KAAK,CAAC;IACvD,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAC7B,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACpC,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,IAAI,CAAC;IAClC,IAAI,KAAK,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IACpC,MAAM,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1B,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;QACjD,MAAM,IAAI,KAAK,CACb,6DAA6D,OAAO,MAAM;YACxE,0EAA0E;YAC1E,4EAA4E;YAC5E,kEAAkE,CACrE,CAAC;IACJ,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,MAAW,OAAO,CAAC,GAAG;IAC/C,MAAM,iBAAiB,GAAG,GAAG,CAAC,mBAAmB,CAAC;IAClD,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,0BAA0B,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAElE,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,cAAc,IAAI,SAAS;QACrC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,IAAI,IAAI,CAAC;QACxC,WAAW,EAAE,CAAC,GAAG,CAAC,sBAAsB,IAAI,EAAE,CAAC;aAC5C,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,OAAO,CAAC;QAClB,iBAAiB;QACjB,yBAAyB,EAAE,IAAI,CAAC,GAAG,CAAC,4BAA4B,CAAC;QACjE,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,cAAc,IAAI,MAAM,CAAC;QAClD,eAAe,EAAE,GAAG,CAAC,iBAAiB,IAAI,iBAAiB;QAC3D,0BAA0B;QAC1B,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,iBAAiB,IAAI,OAAO,CAAC;QACxD,kBAAkB,EAAE,MAAM,CAAC,GAAG,CAAC,oBAAoB,IAAI,GAAG,CAAC;QAC3D,sBAAsB,EAAE,MAAM,CAAC,GAAG,CAAC,yBAAyB,IAAI,KAAK,CAAC;QACtE,YAAY,EAAE,MAAM,CAAC,GAAG,CAAC,wBAAwB,IAAI,GAAG,CAAC;QACzD,iBAAiB,EAAE,MAAM,CAAC,GAAG,CAAC,8BAA8B,IAAI,MAAM,CAAC;QACvE,kBAAkB,EAAE,MAAM,CAAC,GAAG,CAAC,+BAA+B,IAAI,GAAG,CAAC;QACtE,uBAAuB,EAAE,MAAM,CAAC,GAAG,CAAC,qCAAqC,IAAI,MAAM,CAAC;QACpF,UAAU,EAAE,eAAe,CAAC,GAAG,CAAC,qBAAqB,CAAC;QACtD,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,oBAAoB,IAAI,SAAS,CAAC;QACxD,OAAO,EAAE,GAAG,CAAC,aAAa,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ;QACvD,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,oBAAoB,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;QAC5E,sBAAsB,EAAE,IAAI,CAAC,GAAG,CAAC,wBAAwB,CAAC;QAC1D,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC;QAC5C,cAAc,EAAE,QAAQ,CAAC,GAAG,CAAC,0BAA0B,EAAE,EAAE,CAAC;QAC5D,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,4BAA4B,EAAE,SAAS,CAAC;QACtE,0EAA0E;QAC1E,6EAA6E;QAC7E,eAAe;QACf,aAAa,EAAE,GAAG,CAAC,uBAAuB,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC;QAC7F,0BAA0B,EAAE,IAAI,CAAC,GAAG,CAClC,CAAC,EACD,MAAM,CAAC,GAAG,CAAC,sCAAsC,IAAI,CAAC,CAAC,IAAI,CAAC,CAC7D;QACD,mBAAmB,EAAE,CAAC,GAAG,CAAC,+BAA+B,IAAI,EAAE,CAAC;aAC7D,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,OAAO,CAAC;QAClB,YAAY,EAAE,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,SAAS;KAC7F,CAAC;AACJ,CAAC"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * A shared budget for held-open SSE connections (ADR 0032 §6).
3
+ *
4
+ * The live endpoints and the conditional-subscription stream (#311) are the
5
+ * same kind of resource: a socket the collector keeps open, a subscriber on an
6
+ * in-process bus, and a heartbeat timer. `LIVE_MAX_CONNECTIONS` is meant to
7
+ * bound *that*, so they draw on one counter rather than one each — otherwise the
8
+ * setting silently means "up to 2 × max", and grows every time another SSE
9
+ * surface is added.
10
+ */
11
+ export interface ConnectionLimiter {
12
+ /** Take a slot, or `false` when the budget is exhausted. */
13
+ acquire(): boolean;
14
+ /** Return a slot. Never drops below zero, so a double release is harmless. */
15
+ release(): void;
16
+ /** Slots currently held (for tests). */
17
+ readonly open: number;
18
+ /** The configured ceiling. */
19
+ readonly max: number;
20
+ }
21
+ /** Create a limiter over `max` concurrent connections. */
22
+ export declare function createConnectionLimiter(max: number): ConnectionLimiter;
23
+ //# sourceMappingURL=connectionLimiter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectionLimiter.d.ts","sourceRoot":"","sources":["../src/connectionLimiter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,MAAM,WAAW,iBAAiB;IAChC,4DAA4D;IAC5D,OAAO,IAAI,OAAO,CAAC;IACnB,8EAA8E;IAC9E,OAAO,IAAI,IAAI,CAAC;IAChB,wCAAwC;IACxC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,8BAA8B;IAC9B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,0DAA0D;AAC1D,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,CAmBtE"}
@@ -0,0 +1,24 @@
1
+ /** Create a limiter over `max` concurrent connections. */
2
+ export function createConnectionLimiter(max) {
3
+ const ceiling = Math.max(0, Math.trunc(max));
4
+ let open = 0;
5
+ return {
6
+ acquire() {
7
+ if (open >= ceiling)
8
+ return false;
9
+ open += 1;
10
+ return true;
11
+ },
12
+ release() {
13
+ if (open > 0)
14
+ open -= 1;
15
+ },
16
+ get open() {
17
+ return open;
18
+ },
19
+ get max() {
20
+ return ceiling;
21
+ },
22
+ };
23
+ }
24
+ //# sourceMappingURL=connectionLimiter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"connectionLimiter.js","sourceRoot":"","sources":["../src/connectionLimiter.ts"],"names":[],"mappings":"AAqBA,0DAA0D;AAC1D,MAAM,UAAU,uBAAuB,CAAC,GAAW;IACjD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7C,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,OAAO;QACL,OAAO;YACL,IAAI,IAAI,IAAI,OAAO;gBAAE,OAAO,KAAK,CAAC;YAClC,IAAI,IAAI,CAAC,CAAC;YACV,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO;YACL,IAAI,IAAI,GAAG,CAAC;gBAAE,IAAI,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,IAAI,IAAI;YACN,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,GAAG;YACL,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"duckdbStore.d.ts","sourceRoot":"","sources":["../src/duckdbStore.ts"],"names":[],"mappings":"AAuJA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAgP9E"}
1
+ {"version":3,"file":"duckdbStore.d.ts","sourceRoot":"","sources":["../src/duckdbStore.ts"],"names":[],"mappings":"AAoLA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;;;;;GAUG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CA8S9E"}