@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.
- package/AGENTS.md +179 -6
- package/README.md +69 -0
- package/dist/__tests__/support/registryRequests.d.ts +2 -1
- package/dist/__tests__/support/registryRequests.d.ts.map +1 -1
- package/dist/__tests__/support/registryRequests.js +17 -1
- package/dist/__tests__/support/registryRequests.js.map +1 -1
- package/dist/__tests__/support/subscriptionFixtures.d.ts +63 -0
- package/dist/__tests__/support/subscriptionFixtures.d.ts.map +1 -0
- package/dist/__tests__/support/subscriptionFixtures.js +17 -0
- package/dist/__tests__/support/subscriptionFixtures.js.map +1 -0
- package/dist/agentReport.d.ts +256 -0
- package/dist/agentReport.d.ts.map +1 -0
- package/dist/agentReport.js +861 -0
- package/dist/agentReport.js.map +1 -0
- package/dist/app.d.ts +13 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +112 -5
- package/dist/app.js.map +1 -1
- package/dist/audit.d.ts +5 -1
- package/dist/audit.d.ts.map +1 -1
- package/dist/audit.js +24 -4
- package/dist/audit.js.map +1 -1
- package/dist/auth.d.ts +41 -1
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +47 -0
- package/dist/auth.js.map +1 -1
- package/dist/cli.js +99 -2
- package/dist/cli.js.map +1 -1
- package/dist/clickhouseStore.d.ts.map +1 -1
- package/dist/clickhouseStore.js +44 -2
- package/dist/clickhouseStore.js.map +1 -1
- package/dist/config.d.ts +49 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +21 -0
- package/dist/config.js.map +1 -1
- package/dist/connectionLimiter.d.ts +23 -0
- package/dist/connectionLimiter.d.ts.map +1 -0
- package/dist/connectionLimiter.js +24 -0
- package/dist/connectionLimiter.js.map +1 -0
- package/dist/duckdbStore.d.ts.map +1 -1
- package/dist/duckdbStore.js +44 -1
- package/dist/duckdbStore.js.map +1 -1
- package/dist/internalDispatch.d.ts +36 -0
- package/dist/internalDispatch.d.ts.map +1 -0
- package/dist/internalDispatch.js +50 -0
- package/dist/internalDispatch.js.map +1 -0
- package/dist/memoryStore.d.ts.map +1 -1
- package/dist/memoryStore.js +314 -1
- package/dist/memoryStore.js.map +1 -1
- package/dist/mssqlStore.d.ts.map +1 -1
- package/dist/mssqlStore.js +44 -2
- package/dist/mssqlStore.js.map +1 -1
- package/dist/postgresStore.d.ts.map +1 -1
- package/dist/postgresStore.js +44 -2
- package/dist/postgresStore.js.map +1 -1
- package/dist/projectMetadata.d.ts +82 -0
- package/dist/projectMetadata.d.ts.map +1 -0
- package/dist/projectMetadata.js +50 -0
- package/dist/projectMetadata.js.map +1 -0
- package/dist/routes/context.d.ts +135 -0
- package/dist/routes/context.d.ts.map +1 -0
- package/dist/routes/context.js +306 -0
- package/dist/routes/context.js.map +1 -0
- package/dist/routes/insights.d.ts +36 -0
- package/dist/routes/insights.d.ts.map +1 -0
- package/dist/routes/insights.js +810 -0
- package/dist/routes/insights.js.map +1 -0
- package/dist/routes/live.d.ts +8 -0
- package/dist/routes/live.d.ts.map +1 -1
- package/dist/routes/live.js +8 -7
- package/dist/routes/live.js.map +1 -1
- package/dist/routes/mcp.d.ts +36 -0
- package/dist/routes/mcp.d.ts.map +1 -0
- package/dist/routes/mcp.js +262 -0
- package/dist/routes/mcp.js.map +1 -0
- package/dist/routes/meta.d.ts +16 -2
- package/dist/routes/meta.d.ts.map +1 -1
- package/dist/routes/meta.js +699 -10
- package/dist/routes/meta.js.map +1 -1
- package/dist/routes/metadata.d.ts +31 -0
- package/dist/routes/metadata.d.ts.map +1 -0
- package/dist/routes/metadata.js +163 -0
- package/dist/routes/metadata.js.map +1 -0
- package/dist/routes/narrative.d.ts +36 -0
- package/dist/routes/narrative.d.ts.map +1 -0
- package/dist/routes/narrative.js +95 -0
- package/dist/routes/narrative.js.map +1 -0
- package/dist/routes/panels.d.ts +44 -0
- package/dist/routes/panels.d.ts.map +1 -0
- package/dist/routes/panels.js +108 -0
- package/dist/routes/panels.js.map +1 -0
- package/dist/routes/query-dsl.d.ts +50 -0
- package/dist/routes/query-dsl.d.ts.map +1 -0
- package/dist/routes/query-dsl.js +359 -0
- package/dist/routes/query-dsl.js.map +1 -0
- package/dist/routes/query.d.ts +36 -0
- package/dist/routes/query.d.ts.map +1 -1
- package/dist/routes/query.js +101 -13
- package/dist/routes/query.js.map +1 -1
- package/dist/routes/subscriptions.d.ts +52 -0
- package/dist/routes/subscriptions.d.ts.map +1 -0
- package/dist/routes/subscriptions.js +290 -0
- package/dist/routes/subscriptions.js.map +1 -0
- package/dist/store.d.ts +113 -2
- package/dist/store.d.ts.map +1 -1
- package/dist/subscriptions/cli.d.ts +36 -0
- package/dist/subscriptions/cli.d.ts.map +1 -0
- package/dist/subscriptions/cli.js +143 -0
- package/dist/subscriptions/cli.js.map +1 -0
- package/dist/subscriptions/delivery.d.ts +101 -0
- package/dist/subscriptions/delivery.d.ts.map +1 -0
- package/dist/subscriptions/delivery.js +165 -0
- package/dist/subscriptions/delivery.js.map +1 -0
- package/dist/subscriptions/evaluate.d.ts +119 -0
- package/dist/subscriptions/evaluate.d.ts.map +1 -0
- package/dist/subscriptions/evaluate.js +326 -0
- package/dist/subscriptions/evaluate.js.map +1 -0
- package/dist/subscriptions/scheduler.d.ts +97 -0
- package/dist/subscriptions/scheduler.d.ts.map +1 -0
- package/dist/subscriptions/scheduler.js +332 -0
- package/dist/subscriptions/scheduler.js.map +1 -0
- package/dist/subscriptions/stream.d.ts +40 -0
- package/dist/subscriptions/stream.d.ts.map +1 -0
- package/dist/subscriptions/stream.js +38 -0
- package/dist/subscriptions/stream.js.map +1 -0
- package/dist/version.d.ts +3 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +25 -0
- package/dist/version.js.map +1 -0
- package/dist/webhookSignature.d.ts +64 -0
- package/dist/webhookSignature.d.ts.map +1 -0
- package/dist/webhookSignature.js +91 -0
- package/dist/webhookSignature.js.map +1 -0
- package/llms.txt +38 -1
- package/package.json +17 -14
|
@@ -0,0 +1,290 @@
|
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
import { MAX_SUBSCRIPTION_EVENTS, SubscriptionLimitError, isBucketableMetric, BUCKETABLE_METRIC_IDS, } from "@uptimizr/db";
|
|
3
|
+
import { LIMITS, subscriptionPatchSchema, subscriptionSchema } from "@uptimizr/schema";
|
|
4
|
+
import { getMetric } from "@uptimizr/metrics";
|
|
5
|
+
import { requireCapability } from "../auth.js";
|
|
6
|
+
import { verifyLiveToken } from "../liveToken.js";
|
|
7
|
+
import { createConnectionLimiter } from "../connectionLimiter.js";
|
|
8
|
+
import { thresholdColumnFor } from "../subscriptions/evaluate.js";
|
|
9
|
+
import { checkWebhookUrl, webhookTargetOf } from "../subscriptions/delivery.js";
|
|
10
|
+
const HEARTBEAT_MS = 15_000;
|
|
11
|
+
const idParam = z.object({ id: z.string().min(1).max(64) });
|
|
12
|
+
const streamQuery = z.object({
|
|
13
|
+
token: z.string().min(1).optional(),
|
|
14
|
+
/** Deliver only this subscription's firings. */
|
|
15
|
+
id: z.string().min(1).max(64).optional(),
|
|
16
|
+
});
|
|
17
|
+
const eventsQuery = z.object({
|
|
18
|
+
limit: z.coerce.number().int().positive().max(MAX_SUBSCRIPTION_EVENTS).optional(),
|
|
19
|
+
});
|
|
20
|
+
const testQuery = z.object({
|
|
21
|
+
/** Also record and deliver the firing, if it fires. Off by default. */
|
|
22
|
+
deliver: z.coerce.boolean().optional(),
|
|
23
|
+
});
|
|
24
|
+
/**
|
|
25
|
+
* Shape a stored record for the wire.
|
|
26
|
+
*
|
|
27
|
+
* Only the timestamps change: `Date` objects would serialise to ISO strings
|
|
28
|
+
* anyway, but doing it explicitly is what `GET /api/v1/audit` does, and it keeps
|
|
29
|
+
* the JSON identical whether Fastify's serializer or a test's `JSON.stringify`
|
|
30
|
+
* produces it. Nothing is stripped here — the masking that matters is done by
|
|
31
|
+
* the store's row mapper, so a record can never carry a secret this far.
|
|
32
|
+
*/
|
|
33
|
+
function toApi(sub) {
|
|
34
|
+
return {
|
|
35
|
+
...sub,
|
|
36
|
+
createdAt: sub.createdAt.toISOString(),
|
|
37
|
+
updatedAt: sub.updatedAt.toISOString(),
|
|
38
|
+
lastFiredAt: sub.lastFiredAt?.toISOString() ?? null,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Validate a declaration against the registry, beyond what Zod can check.
|
|
43
|
+
*
|
|
44
|
+
* Three refusals, each naming its own remedy, for the same reason the insight
|
|
45
|
+
* routes separate theirs: an agent that is told "bad metric" retries the same
|
|
46
|
+
* call, and an agent that is told "use `p50_fps`" does not.
|
|
47
|
+
*/
|
|
48
|
+
function checkAgainstRegistry(sub) {
|
|
49
|
+
// `presence` is answered from the live bus and reads no series at all, so it
|
|
50
|
+
// is the one predicate that does not constrain the metric.
|
|
51
|
+
const busOnly = sub.predicate.kind === "presence";
|
|
52
|
+
const metric = getMetric(sub.metric);
|
|
53
|
+
if (metric == null) {
|
|
54
|
+
return {
|
|
55
|
+
error: `unknown metric '${sub.metric}'`,
|
|
56
|
+
metric: sub.metric,
|
|
57
|
+
available: [...BUCKETABLE_METRIC_IDS],
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
if (!busOnly && !isBucketableMetric(sub.metric)) {
|
|
61
|
+
return {
|
|
62
|
+
error: `metric '${sub.metric}' has no portable bucket series, so it cannot be evaluated on a ` +
|
|
63
|
+
`window without changing what it means`,
|
|
64
|
+
metric: sub.metric,
|
|
65
|
+
available: [...BUCKETABLE_METRIC_IDS],
|
|
66
|
+
};
|
|
67
|
+
}
|
|
68
|
+
if (sub.predicate.kind === "threshold") {
|
|
69
|
+
const column = thresholdColumnFor(metric);
|
|
70
|
+
if (column == null) {
|
|
71
|
+
return {
|
|
72
|
+
error: `metric '${sub.metric}' declares no comparable column to threshold on`,
|
|
73
|
+
metric: sub.metric,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
if (sub.predicate.column !== column) {
|
|
77
|
+
return {
|
|
78
|
+
error: `a threshold on '${sub.metric}' can only compare its headline column ` +
|
|
79
|
+
`'${column}' (got '${sub.predicate.column}')`,
|
|
80
|
+
metric: sub.metric,
|
|
81
|
+
column,
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
/** Whether the subscription's webhook target is reachable under this config. */
|
|
88
|
+
function checkDelivery(sub, config) {
|
|
89
|
+
const target = sub.delivery.find((d) => d.kind === "webhook");
|
|
90
|
+
if (target == null || target.kind !== "webhook")
|
|
91
|
+
return null;
|
|
92
|
+
const checked = checkWebhookUrl(target.url, config.webhookAllowedHosts);
|
|
93
|
+
return "refused" in checked ? checked.refused : null;
|
|
94
|
+
}
|
|
95
|
+
/** Open an SSE response on the raw socket (mirrors `routes/live.ts`). */
|
|
96
|
+
function openSse(request, reply, config) {
|
|
97
|
+
const origin = request.headers.origin;
|
|
98
|
+
const cors = typeof origin === "string" && config.corsOrigins.includes(origin)
|
|
99
|
+
? { "access-control-allow-origin": origin, vary: "Origin" }
|
|
100
|
+
: {};
|
|
101
|
+
reply.raw.writeHead(200, {
|
|
102
|
+
"content-type": "text/event-stream; charset=utf-8",
|
|
103
|
+
"cache-control": "no-cache, no-transform",
|
|
104
|
+
connection: "keep-alive",
|
|
105
|
+
"x-accel-buffering": "no",
|
|
106
|
+
...cors,
|
|
107
|
+
});
|
|
108
|
+
reply.raw.write(": connected\n\n");
|
|
109
|
+
reply.hijack();
|
|
110
|
+
return {
|
|
111
|
+
send: (data, event) => {
|
|
112
|
+
if (reply.raw.writableEnded)
|
|
113
|
+
return;
|
|
114
|
+
if (event)
|
|
115
|
+
reply.raw.write(`event: ${event}\n`);
|
|
116
|
+
reply.raw.write(`data: ${data}\n\n`);
|
|
117
|
+
},
|
|
118
|
+
comment: (text) => {
|
|
119
|
+
if (!reply.raw.writableEnded)
|
|
120
|
+
reply.raw.write(`: ${text}\n\n`);
|
|
121
|
+
},
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
export const subscriptionRoutes = async (app, options) => {
|
|
125
|
+
const { store, config, scheduler, stream } = options;
|
|
126
|
+
const r = app.withTypeProvider();
|
|
127
|
+
const connections = options.connections ?? createConnectionLimiter(config.liveMaxConnections);
|
|
128
|
+
/** Resolve a subscription of the authenticated project, or send a 404. */
|
|
129
|
+
async function resolve(projectId, id, reply) {
|
|
130
|
+
const sub = await store.getSubscription(projectId, id);
|
|
131
|
+
if (sub == null) {
|
|
132
|
+
await reply.code(404).send({ error: `no subscription '${id}' in this project` });
|
|
133
|
+
return null;
|
|
134
|
+
}
|
|
135
|
+
return sub;
|
|
136
|
+
}
|
|
137
|
+
// --- SSE stream ----------------------------------------------------------
|
|
138
|
+
// Registered before `/:id` so `stream` is never read as a subscription id.
|
|
139
|
+
r.get("/api/v1/subscriptions/stream", { schema: { querystring: streamQuery } }, (req, reply) => {
|
|
140
|
+
const token = req.query.token;
|
|
141
|
+
if (!token) {
|
|
142
|
+
void reply.code(401).send({ error: "missing live token" });
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
const claims = verifyLiveToken(token, config.liveTokenSecret);
|
|
146
|
+
if (!claims) {
|
|
147
|
+
void reply.code(401).send({ error: "invalid or expired live token" });
|
|
148
|
+
return;
|
|
149
|
+
}
|
|
150
|
+
// Shares the live budget: an open subscription stream is the same held-open
|
|
151
|
+
// socket, and one pool is the only way the cap means anything.
|
|
152
|
+
if (!connections.acquire()) {
|
|
153
|
+
void reply.code(503).send({ error: "live connection limit reached" });
|
|
154
|
+
return;
|
|
155
|
+
}
|
|
156
|
+
const { send, comment } = openSse(req, reply, config);
|
|
157
|
+
const unsubscribe = stream.subscribe({ projectId: claims.projectId, subscriptionId: req.query.id }, (message) => send(JSON.stringify(message), "subscription"));
|
|
158
|
+
const heartbeat = setInterval(() => comment("ping"), HEARTBEAT_MS);
|
|
159
|
+
heartbeat.unref?.();
|
|
160
|
+
req.raw.on("close", () => {
|
|
161
|
+
clearInterval(heartbeat);
|
|
162
|
+
unsubscribe();
|
|
163
|
+
connections.release();
|
|
164
|
+
});
|
|
165
|
+
});
|
|
166
|
+
// --- CRUD ----------------------------------------------------------------
|
|
167
|
+
r.get("/api/v1/subscriptions", {}, async (req, reply) => {
|
|
168
|
+
const resolved = await requireCapability(req, reply, store, "query");
|
|
169
|
+
if (!resolved)
|
|
170
|
+
return reply;
|
|
171
|
+
const rows = await store.listSubscriptions(resolved.projectId);
|
|
172
|
+
return rows.map(toApi);
|
|
173
|
+
});
|
|
174
|
+
r.get("/api/v1/subscriptions/:id", { schema: { params: idParam } }, async (req, reply) => {
|
|
175
|
+
const resolved = await requireCapability(req, reply, store, "query");
|
|
176
|
+
if (!resolved)
|
|
177
|
+
return reply;
|
|
178
|
+
const sub = await resolve(resolved.projectId, req.params.id, reply);
|
|
179
|
+
return sub == null ? reply : toApi(sub);
|
|
180
|
+
});
|
|
181
|
+
r.post("/api/v1/subscriptions", {
|
|
182
|
+
// No `response` schema: the handler answers with a 201 record, a 400
|
|
183
|
+
// rejection or a 409, and pinning one of those in the serializer would
|
|
184
|
+
// narrow the others away. Error bodies are documented in `meta.ts`.
|
|
185
|
+
schema: { body: subscriptionSchema },
|
|
186
|
+
}, async (req, reply) => {
|
|
187
|
+
const resolved = await requireCapability(req, reply, store, "annotate");
|
|
188
|
+
if (!resolved)
|
|
189
|
+
return reply;
|
|
190
|
+
const rejection = checkAgainstRegistry(req.body);
|
|
191
|
+
if (rejection != null)
|
|
192
|
+
return reply.code(400).send(rejection);
|
|
193
|
+
// A webhook the collector may not reach is refused at creation rather than
|
|
194
|
+
// silently recorded and then failed on every firing.
|
|
195
|
+
const refusal = checkDelivery(req.body, config);
|
|
196
|
+
if (refusal != null)
|
|
197
|
+
return reply.code(400).send({ error: refusal });
|
|
198
|
+
try {
|
|
199
|
+
const created = await store.createSubscription(resolved.projectId, req.body);
|
|
200
|
+
await scheduler.reload();
|
|
201
|
+
return reply.code(201).send(toApi(created));
|
|
202
|
+
}
|
|
203
|
+
catch (err) {
|
|
204
|
+
if (err instanceof SubscriptionLimitError) {
|
|
205
|
+
return reply.code(409).send({
|
|
206
|
+
error: `a project may hold at most ${LIMITS.maxSubscriptionsPerProject} subscriptions`,
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
throw err;
|
|
210
|
+
}
|
|
211
|
+
});
|
|
212
|
+
r.patch("/api/v1/subscriptions/:id", {
|
|
213
|
+
schema: { params: idParam, body: subscriptionPatchSchema },
|
|
214
|
+
}, async (req, reply) => {
|
|
215
|
+
const resolved = await requireCapability(req, reply, store, "annotate");
|
|
216
|
+
if (!resolved)
|
|
217
|
+
return reply;
|
|
218
|
+
const updated = await store.setSubscriptionEnabled(resolved.projectId, req.params.id, req.body.enabled);
|
|
219
|
+
if (updated == null) {
|
|
220
|
+
return reply
|
|
221
|
+
.code(404)
|
|
222
|
+
.send({ error: `no subscription '${req.params.id}' in this project` });
|
|
223
|
+
}
|
|
224
|
+
await scheduler.reload();
|
|
225
|
+
return toApi(updated);
|
|
226
|
+
});
|
|
227
|
+
r.delete("/api/v1/subscriptions/:id", { schema: { params: idParam } }, async (req, reply) => {
|
|
228
|
+
const resolved = await requireCapability(req, reply, store, "annotate");
|
|
229
|
+
if (!resolved)
|
|
230
|
+
return reply;
|
|
231
|
+
const deleted = await store.deleteSubscription(resolved.projectId, req.params.id);
|
|
232
|
+
if (!deleted) {
|
|
233
|
+
return reply.code(404).send({ error: `no subscription '${req.params.id}' in this project` });
|
|
234
|
+
}
|
|
235
|
+
await scheduler.reload();
|
|
236
|
+
return reply.code(204).send();
|
|
237
|
+
});
|
|
238
|
+
// --- Firings -------------------------------------------------------------
|
|
239
|
+
r.get("/api/v1/subscriptions/:id/events", {
|
|
240
|
+
schema: { params: idParam, querystring: eventsQuery },
|
|
241
|
+
}, async (req, reply) => {
|
|
242
|
+
const resolved = await requireCapability(req, reply, store, "query");
|
|
243
|
+
if (!resolved)
|
|
244
|
+
return reply;
|
|
245
|
+
const sub = await resolve(resolved.projectId, req.params.id, reply);
|
|
246
|
+
if (sub == null)
|
|
247
|
+
return reply;
|
|
248
|
+
const rows = await store.listSubscriptionEvents(resolved.projectId, sub.id, {
|
|
249
|
+
limit: req.query.limit,
|
|
250
|
+
});
|
|
251
|
+
return rows.map((row) => ({ ...row, at: row.at.toISOString() }));
|
|
252
|
+
});
|
|
253
|
+
/**
|
|
254
|
+
* Evaluate once, now.
|
|
255
|
+
*
|
|
256
|
+
* A dry run by default: it answers with the evaluation — including *why* it
|
|
257
|
+
* did not fire — and delivers nothing. `?deliver=true` makes it a real firing,
|
|
258
|
+
* cooldown and all, which is how an operator proves a webhook receiver works
|
|
259
|
+
* without waiting for the condition to occur on its own.
|
|
260
|
+
*/
|
|
261
|
+
r.post("/api/v1/subscriptions/:id/test", {
|
|
262
|
+
schema: { params: idParam, querystring: testQuery },
|
|
263
|
+
}, async (req, reply) => {
|
|
264
|
+
const resolved = await requireCapability(req, reply, store, "annotate");
|
|
265
|
+
if (!resolved)
|
|
266
|
+
return reply;
|
|
267
|
+
const sub = await resolve(resolved.projectId, req.params.id, reply);
|
|
268
|
+
if (sub == null)
|
|
269
|
+
return reply;
|
|
270
|
+
const result = await scheduler.runOnce(sub, { deliver: req.query.deliver === true });
|
|
271
|
+
if (result == null) {
|
|
272
|
+
return reply
|
|
273
|
+
.code(409)
|
|
274
|
+
.send({ error: "an evaluation is already in flight; try again in a moment" });
|
|
275
|
+
}
|
|
276
|
+
return {
|
|
277
|
+
fired: result.fired,
|
|
278
|
+
reason: result.reason,
|
|
279
|
+
window: result.window,
|
|
280
|
+
value: result.value,
|
|
281
|
+
expected: result.expected,
|
|
282
|
+
sampleSize: result.sampleSize,
|
|
283
|
+
dimensionValue: result.dimensionValue,
|
|
284
|
+
bucket: result.bucket,
|
|
285
|
+
delivered: result.fired && req.query.deliver === true,
|
|
286
|
+
webhookConfigured: webhookTargetOf(sub) != null,
|
|
287
|
+
};
|
|
288
|
+
});
|
|
289
|
+
};
|
|
290
|
+
//# sourceMappingURL=subscriptions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"subscriptions.js","sourceRoot":"","sources":["../../src/routes/subscriptions.ts"],"names":[],"mappings":"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"}
|
package/dist/store.d.ts
CHANGED
|
@@ -1,11 +1,21 @@
|
|
|
1
1
|
import type { AnyEvent, SceneProxy, SceneRegion } from "@uptimizr/schema";
|
|
2
|
-
import type { AgentAuditEntry, AgentAuditInput, AuditQueryOptions, CameraDistanceBucketRow, CameraModeOptions, ClickGazeRayRow, CoverageVoxelRow, DeadClickRow, DirectionBinRow, ViewCoverageHistogramRow, EventTypeCountRow, FlowLinkRow, FunnelStepInput, FunnelStepResultRow, SceneRetentionOptions, SceneRetentionRow, LoadBounceFunnelOptions, LoadBounceBandRow, VariantLeaderboardOptions, VariantLeaderboardRow, HeatmapBinRow, HoverDwellRow, CompileStallRow, ArPlacementTimeToPlaceRow, ArPlacementAttemptsRow, ArPlacementSurfaceRow, ResourceSummaryRow, CapabilityChangeRow, CameraGestureRow, MeshCountRow, MeshDwellRow, MeshBlindSpotRow, MeshInteractionKindRow, ReachabilityBinRow, MeshSourceCountRow, MeshTrendPointRow, InputActionCountRow, PositionBinRow, PerfHeatmapVoxelRow, RageClickRow, NavigationStatsRow, BacktrackRatioRow, XrRotationRateRow, XrSourceUsageRow, XrAbandonmentRow, XrLocomotionRow, BoundaryContactsRow, TrackingQualityRow, InteractionSourceRow, PerfSummaryRow, PerfDistributionRow, FpsHistogramRow, FrameTimePercentileRow, JankRateRow, PerfChurnOptions, PerfChurnRow, PerfByDeviceRow, PerfBySceneRow, ResourcePercentileRow, RenderScaleTruthRow, AggregateTrajectoryPointRow, ResolvedApiKey, StabilityCountRow, GraphicsDiagnosticCountRow, RenderingTechnologyRow, RangeOptions, RegionOptions, ErrorHeatmapOptions, SceneOptions, SceneRegionRecord, SceneRegionSummary, SceneRepresentation, SceneRepresentationSummary, SceneRow, SourceOptions, SessionOptions, MeshOptions, SessionMeta, SessionSummaryRow, SpatialStatsRow, TimeseriesBucketRow, TimeseriesOptions, TrajectoryPointRow, WorldHeatmapBinRow } from "@uptimizr/db";
|
|
2
|
+
import type { AgentAuditEntry, AgentAuditInput, AuditQueryOptions, CameraDistanceBucketRow, CameraModeOptions, ClickGazeRayRow, CoverageVoxelRow, DeadClickRow, DirectionBinRow, ViewCoverageHistogramRow, EventTypeCountRow, FlowLinkRow, FunnelStepInput, FunnelStepResultRow, SceneRetentionOptions, SceneRetentionRow, LoadBounceFunnelOptions, LoadBounceBandRow, VariantLeaderboardOptions, VariantLeaderboardRow, HeatmapBinRow, HoverDwellRow, CompileStallRow, ArPlacementTimeToPlaceRow, ArPlacementAttemptsRow, ArPlacementSurfaceRow, ResourceSummaryRow, CapabilityChangeRow, CameraGestureRow, MeshCountRow, MetricBucketOptions, MetricBucketRow, MeshDwellRow, MeshBlindSpotRow, MeshInteractionKindRow, ReachabilityBinRow, MeshSourceCountRow, MeshTrendPointRow, MetricQueryOptions, InputActionCountRow, CustomEventVocabularyOptions, CustomEventVocabularyRow, PositionBinRow, PerfHeatmapVoxelRow, RageClickRow, NavigationStatsRow, BacktrackRatioRow, XrRotationRateRow, XrSourceUsageRow, XrAbandonmentRow, XrLocomotionRow, BoundaryContactsRow, TrackingQualityRow, InteractionSourceRow, PerfSummaryRow, PerfDistributionRow, FpsHistogramRow, FrameTimePercentileRow, JankRateRow, PerfChurnOptions, PerfChurnRow, PerfByDeviceRow, PerfBySceneRow, ResourcePercentileRow, RenderScaleTruthRow, AggregateTrajectoryPointRow, ResolvedApiKey, StabilityCountRow, GraphicsDiagnosticCountRow, RenderingTechnologyRow, RangeOptions, RegionOptions, ErrorHeatmapOptions, SceneOptions, SceneRegionRecord, SceneRegionSummary, AnnotationRecord, CreateAnnotationInput, CreatePanelSpecInput, CreateSavedAnalysisInput, GlossaryEntryRecord, ListAnnotationsOptions, MetadataListOptions, PanelSpecRecord, PutGlossaryEntryInput, SavedAnalysisRecord, UpdatePanelSpecInput, SceneRepresentation, SceneRepresentationSummary, SceneRow, SourceOptions, SubscriptionStore, SessionOptions, MeshOptions, SessionMeta, SessionSummaryRow, SpatialStatsRow, TimeseriesBucketRow, TimeseriesOptions, TrajectoryPointRow, WorldHeatmapBinRow, QuerySpec } from "@uptimizr/db";
|
|
3
|
+
import type { MetricId } from "@uptimizr/metrics";
|
|
4
|
+
/** The storage engines a collector can be wired to (`COLLECTOR_STORE`). */
|
|
5
|
+
export type StoreEngine = "duckdb" | "postgres" | "mssql" | "clickhouse" | "memory";
|
|
3
6
|
/**
|
|
4
7
|
* The data-access surface the routes depend on. Abstracting it behind an
|
|
5
8
|
* interface keeps handlers thin and lets tests inject a fake store without a
|
|
6
9
|
* live ClickHouse/Postgres (the framework and the DB stay swappable — ADR 0005).
|
|
7
10
|
*/
|
|
8
|
-
export interface CollectorStore {
|
|
11
|
+
export interface CollectorStore extends SubscriptionStore {
|
|
12
|
+
/**
|
|
13
|
+
* Which storage engine is behind this store. Descriptive only — no handler
|
|
14
|
+
* branches on it — but the project context document reports it (ADR 0051 §5)
|
|
15
|
+
* so an agent knows whether it is reading a single-file DuckDB collector or a
|
|
16
|
+
* scale-tier engine before it reasons about freshness or volume.
|
|
17
|
+
*/
|
|
18
|
+
readonly engine: StoreEngine;
|
|
9
19
|
/**
|
|
10
20
|
* Resolve a plaintext API key to its project id, key id, capability set and
|
|
11
21
|
* optional per-key rate limit, or `null` if invalid/revoked. The capability
|
|
@@ -30,6 +40,40 @@ export interface CollectorStore {
|
|
|
30
40
|
projectExists(projectId: string): Promise<boolean>;
|
|
31
41
|
/** Batched insert of enriched, validated events. */
|
|
32
42
|
insertEvents(events: readonly AnyEvent[]): Promise<void>;
|
|
43
|
+
/**
|
|
44
|
+
* Run **any** registry metric by id, with an option bag the query DSL
|
|
45
|
+
* assembled from a validated `queryV1` document (ADR 0051 §3).
|
|
46
|
+
*
|
|
47
|
+
* The one method the DSL needs, and deliberately the only one it adds: every
|
|
48
|
+
* store implements it as `run<Engine>Query(compileMetric(…, <engine>Dialect))`,
|
|
49
|
+
* so a DSL query takes exactly the path a canned aggregate takes — the same
|
|
50
|
+
* builders, the same dialect, the same cross-engine parity harness and the
|
|
51
|
+
* same numeric coercion at the driver edge. Putting the dispatch in the
|
|
52
|
+
* collector instead would have given the DSL a second, unverified query path.
|
|
53
|
+
*
|
|
54
|
+
* Rows are returned untyped because the shape depends on the metric; the
|
|
55
|
+
* registry `row` schema is what describes them, and the response layer
|
|
56
|
+
* (`format=table|summary`) reads that.
|
|
57
|
+
*/
|
|
58
|
+
runMetric(projectId: string, metric: MetricId, options: MetricQueryOptions): Promise<Record<string, unknown>[]>;
|
|
59
|
+
/**
|
|
60
|
+
* Render the same query {@link runMetric} would run, **without running it** —
|
|
61
|
+
* the compiled `QuerySpec` and the name of the engine that would execute it
|
|
62
|
+
* (ADR 0051 §3, #304).
|
|
63
|
+
*
|
|
64
|
+
* This is what `explain: true` answers with. It has to be a store method for
|
|
65
|
+
* the one reason the DSL has a store seam at all: the dialect is the store’s,
|
|
66
|
+
* and the collector deliberately does not know which engine it is talking to.
|
|
67
|
+
* Returning the spec rather than a rendered string keeps the redaction
|
|
68
|
+
* decision (`explainSpec`) in one place instead of four.
|
|
69
|
+
*
|
|
70
|
+
* `null` from a store that compiles no SQL (the in-memory one), so `explain`
|
|
71
|
+
* degrades to the warnings rather than failing.
|
|
72
|
+
*/
|
|
73
|
+
describeMetric(projectId: string, metric: MetricId, options: MetricQueryOptions): {
|
|
74
|
+
dialect: string;
|
|
75
|
+
spec: QuerySpec;
|
|
76
|
+
} | null;
|
|
33
77
|
listSessions(projectId: string, opts?: RangeOptions & CameraModeOptions & {
|
|
34
78
|
limit?: number;
|
|
35
79
|
}): Promise<SessionSummaryRow[]>;
|
|
@@ -458,6 +502,15 @@ export interface CollectorStore {
|
|
|
458
502
|
topInputActions(projectId: string, opts?: RangeOptions & SceneOptions & SourceOptions & SessionOptions & {
|
|
459
503
|
limit?: number;
|
|
460
504
|
}): Promise<InputActionCountRow[]>;
|
|
505
|
+
/**
|
|
506
|
+
* Discovered custom-event vocabulary (ADR 0051 §5): the developer-defined
|
|
507
|
+
* `custom` event names the project emits, with their counts, distinct sessions
|
|
508
|
+
* and the union of `props` keys observed on a bounded sample of each name's
|
|
509
|
+
* most recent payloads. The store folds the sampled payloads into prop types
|
|
510
|
+
* itself — the raw payload is an implementation detail and never leaves this
|
|
511
|
+
* layer.
|
|
512
|
+
*/
|
|
513
|
+
customEventVocabulary(projectId: string, opts?: CustomEventVocabularyOptions): Promise<CustomEventVocabularyRow[]>;
|
|
461
514
|
/** Distinct scenes (+counts, last-seen) for the project; time-range aware (ADR 0010). */
|
|
462
515
|
scenes(projectId: string, opts?: RangeOptions & {
|
|
463
516
|
limit?: number;
|
|
@@ -466,6 +519,27 @@ export interface CollectorStore {
|
|
|
466
519
|
timeseries(projectId: string, opts?: RangeOptions & SceneOptions & TimeseriesOptions): Promise<TimeseriesBucketRow[]>;
|
|
467
520
|
/** Per-event-type counts over the range (powers the scene health panel). */
|
|
468
521
|
eventTypeCounts(projectId: string, opts?: RangeOptions & SceneOptions): Promise<EventTypeCountRow[]>;
|
|
522
|
+
/**
|
|
523
|
+
* The per-bucket series of one metric's comparable headline column — the one
|
|
524
|
+
* store read both insight primitives are built on (ADR 0051 §4).
|
|
525
|
+
*
|
|
526
|
+
* A single generic aggregation rather than one store method per insight: what
|
|
527
|
+
* differs between metrics is the *series*, and that difference is declared as
|
|
528
|
+
* data in `@uptimizr/db`'s `src/insights/measures.ts`. Everything computed
|
|
529
|
+
* from the series — mean, median, MAD, quantiles, slope, robust z — is pure
|
|
530
|
+
* TypeScript, so no two engines can disagree about an insight.
|
|
531
|
+
*
|
|
532
|
+
* `opts.metric` must name a metric that has a portable bucket series; the
|
|
533
|
+
* route validates that at the edge and answers `400` with the list of ids that
|
|
534
|
+
* do, so an implementation may assume it.
|
|
535
|
+
*
|
|
536
|
+
* `opts.series` (#307) selects one of that metric’s **named auxiliary
|
|
537
|
+
* series** instead — a rate denominator, an FPS tail — declared beside the
|
|
538
|
+
* main measure in the same catalog. It is a compile-time union set by the
|
|
539
|
+
* insight layer, never a caller-supplied string, and a metric may declare a
|
|
540
|
+
* variant without being bucketable in its own right.
|
|
541
|
+
*/
|
|
542
|
+
metricBuckets(projectId: string, opts: MetricBucketOptions): Promise<MetricBucketRow[]>;
|
|
469
543
|
/**
|
|
470
544
|
* Single-project configurator funnel (#78, ADR 0038): ordered, per-session
|
|
471
545
|
* step-reach with the drop-off between consecutive steps. Each row is
|
|
@@ -536,6 +610,43 @@ export interface CollectorStore {
|
|
|
536
610
|
* kept separate so the scene listing stays exactly as it is.
|
|
537
611
|
*/
|
|
538
612
|
listSceneRegions(projectId: string): Promise<SceneRegionSummary[]>;
|
|
613
|
+
/** Create one annotation and return the stored row. */
|
|
614
|
+
createAnnotation(projectId: string, input: CreateAnnotationInput): Promise<AnnotationRecord>;
|
|
615
|
+
/**
|
|
616
|
+
* A project's annotations, newest first. `since`/`until` are an **overlap**
|
|
617
|
+
* filter — an annotation matches when its period intersects the window, and a
|
|
618
|
+
* standing note (no period) always matches.
|
|
619
|
+
*/
|
|
620
|
+
listAnnotations(projectId: string, opts?: ListAnnotationsOptions): Promise<AnnotationRecord[]>;
|
|
621
|
+
/** Delete one annotation of this project; `false` when the id is unknown. */
|
|
622
|
+
deleteAnnotation(projectId: string, id: string): Promise<boolean>;
|
|
623
|
+
/** Upsert one glossary entry — the term is the identity, so writes are idempotent. */
|
|
624
|
+
putGlossaryEntry(projectId: string, input: PutGlossaryEntryInput): Promise<GlossaryEntryRecord>;
|
|
625
|
+
/** A project's whole glossary, ordered by term. */
|
|
626
|
+
listGlossary(projectId: string, opts?: MetadataListOptions): Promise<GlossaryEntryRecord[]>;
|
|
627
|
+
/** Delete one term; `false` when it was not defined. */
|
|
628
|
+
deleteGlossaryEntry(projectId: string, term: string): Promise<boolean>;
|
|
629
|
+
/** Create one saved analysis and return the stored row. */
|
|
630
|
+
createSavedAnalysis(projectId: string, input: CreateSavedAnalysisInput): Promise<SavedAnalysisRecord>;
|
|
631
|
+
/** A project's saved analyses, newest first. */
|
|
632
|
+
listSavedAnalyses(projectId: string, opts?: MetadataListOptions): Promise<SavedAnalysisRecord[]>;
|
|
633
|
+
/** Delete one saved analysis; `false` when the id is unknown. */
|
|
634
|
+
deleteSavedAnalysis(projectId: string, id: string): Promise<boolean>;
|
|
635
|
+
/** Pin one panel and return the stored row. */
|
|
636
|
+
createPanelSpec(projectId: string, input: CreatePanelSpecInput): Promise<PanelSpecRecord>;
|
|
637
|
+
/**
|
|
638
|
+
* A project's pinned panels, **oldest first** — the opposite order to the
|
|
639
|
+
* other metadata listings, because these are grid positions rather than a
|
|
640
|
+
* feed and newest-first would reshuffle the dashboard on every pin.
|
|
641
|
+
*/
|
|
642
|
+
listPanelSpecs(projectId: string, opts?: MetadataListOptions): Promise<PanelSpecRecord[]>;
|
|
643
|
+
/**
|
|
644
|
+
* Replace one panel's spec, keeping its id, its place and its original
|
|
645
|
+
* authorship; `null` when the id is unknown (or belongs to another project).
|
|
646
|
+
*/
|
|
647
|
+
updatePanelSpec(projectId: string, id: string, input: UpdatePanelSpecInput): Promise<PanelSpecRecord | null>;
|
|
648
|
+
/** Unpin one panel; `false` when the id is unknown. */
|
|
649
|
+
deletePanelSpec(projectId: string, id: string): Promise<boolean>;
|
|
539
650
|
/** Release underlying connections. */
|
|
540
651
|
close(): Promise<void>;
|
|
541
652
|
}
|
package/dist/store.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type Subscription } from "@uptimizr/schema";
|
|
2
|
+
/**
|
|
3
|
+
* `uptimizr subscriptions …` — the operator's offline half of the subscriptions
|
|
4
|
+
* API (#311, ADR 0051 §6).
|
|
5
|
+
*
|
|
6
|
+
* The offline sibling of `/api/v1/subscriptions`, and an **operator** command in
|
|
7
|
+
* the same sense as `new-key` and `regions set`: it takes no API key and opens
|
|
8
|
+
* the store directly, because store access is already strictly more than any
|
|
9
|
+
* capability grants. It is the path a self-hoster uses to put a subscription
|
|
10
|
+
* under version control — `sub.json` in a repo, applied by a deploy step —
|
|
11
|
+
* rather than clicking one together.
|
|
12
|
+
*
|
|
13
|
+
* `test` deliberately **never delivers**. A dry run from a shell should not be
|
|
14
|
+
* able to page anyone; proving a webhook receiver works is
|
|
15
|
+
* `POST /api/v1/subscriptions/:id/test?deliver=true`, which needs an `annotate`
|
|
16
|
+
* key and is auditable.
|
|
17
|
+
*
|
|
18
|
+
* Human progress goes to stderr, machine-readable JSON to stdout — the same
|
|
19
|
+
* split the rest of `cli.ts` uses, so `uptimizr subscriptions list | jq` works.
|
|
20
|
+
*/
|
|
21
|
+
/** Read and validate a declaration file (a bare object or a `{ subscription }` envelope). */
|
|
22
|
+
export declare function readSubscriptionFile(file: string): Subscription;
|
|
23
|
+
/** `uptimizr subscriptions list` — every subscription of `projectId`. */
|
|
24
|
+
export declare function cmdSubscriptionsList(projectId: string): Promise<void>;
|
|
25
|
+
/** `uptimizr subscriptions add --file sub.json` — store a new declaration. */
|
|
26
|
+
export declare function cmdSubscriptionsAdd(projectId: string, file: string): Promise<void>;
|
|
27
|
+
/** `uptimizr subscriptions remove <id>` — delete a subscription and its firings. */
|
|
28
|
+
export declare function cmdSubscriptionsRemove(projectId: string, id: string): Promise<void>;
|
|
29
|
+
/**
|
|
30
|
+
* `uptimizr subscriptions test <id>` — evaluate once, now, delivering nothing.
|
|
31
|
+
*
|
|
32
|
+
* Answers with the evaluation, including why it did not fire, which is what
|
|
33
|
+
* makes a subscription tunable rather than mysterious.
|
|
34
|
+
*/
|
|
35
|
+
export declare function cmdSubscriptionsTest(projectId: string, id: string): Promise<void>;
|
|
36
|
+
//# sourceMappingURL=cli.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../../src/subscriptions/cli.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAOzE;;;;;;;;;;;;;;;;;;GAkBG;AAEH,6FAA6F;AAC7F,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAuB/D;AAmBD,yEAAyE;AACzE,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAK3E;AAED,8EAA8E;AAC9E,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBxF;AAED,oFAAoF;AACpF,wBAAsB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAIzF;AAED;;;;;GAKG;AACH,wBAAsB,oBAAoB,CAAC,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoDvF"}
|