@catalyst-cloud/schema 0.1.43 → 0.1.44

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@catalyst-cloud/schema",
3
- "version": "0.1.43",
3
+ "version": "0.1.44",
4
4
  "type": "module",
5
5
  "description": "Typed Drizzle schema = single source of truth for the per-tenant Mirror DO SQLite store (CTC-13 / ADR-0002). Shared by the mirror Worker, the host-sync replica, and the browser OPFS replica.",
6
6
  "license": "MIT",
@@ -1905,8 +1905,12 @@ export interface TelemetryEventSpec {
1905
1905
  * telemetry-shaped in the plan's measurement) — ticks, gauges, process samples, read traces,
1906
1906
  * forwarding lag, "would-*" dry-run counterfactuals, and retry-storm noise that collapses to a single
1907
1907
  * durable boundary fact elsewhere in this registry (e.g. linear.write.proxy.failed's 140k+ lines/mo
1908
- * collapses to the ONE durable linear.label.retry-exhausted terminal fact). CTC-962 (ADR-0048) added
1909
- * 5 mirror-ingress names on top of those 70 (measured total: 75) — see the `mirror.*` entries below.
1908
+ * collapses to the ONE durable linear.label.retry-exhausted terminal fact). CTC-962 (ADR-0048) started
1909
+ * the `mirror.*` family; it now carries 7 names (CTC-289's mirror.webhook.out-of-scope and CTC-1510's
1910
+ * mirror.dispatch-queue.derive-refused both rode the same sink after CTC-962 landed) — see those
1911
+ * entries below. ⚠️ The "70 fleet/orchestrator-origin types" figure above is this comment's OWN prior
1912
+ * measurement, already stale against the live count (Object.keys(telemetryEventTypes).length) by the
1913
+ * time CTC-1510 read it — re-measure before citing it, don't re-derive it from this text.
1910
1914
  */
1911
1915
  export const telemetryEventTypes = {
1912
1916
  "account.ratelimit.sampled": {
@@ -2075,6 +2079,11 @@ export const telemetryEventTypes = {
2075
2079
  "CTC-289 — a verified, tenant-routable delivery whose repo/team is not a provisioned `projects` row. Carries the account, the scope key and the fence mode: the scope key is the entire diagnostic value (it answers 'why is repo Y in my mirror' and 'why is repo Y missing'), and the mode distinguishes an observed would-drop from an actual drop. Unsampled while the fence rolls out — the `observe` soak that gates enforcement reads exactly this signal, and a sampled soak cannot support a data-discarding flip. Revisit the class once enforce has been stable.",
2076
2080
  sampling: { kind: "always" },
2077
2081
  },
2082
+ "mirror.dispatch-queue.derive-refused": {
2083
+ reason:
2084
+ "CTC-1510 — one point per fail-closed `deriveDispatchQueue` refusal (an unresolved, missing or ambiguous team_workflow_mapping), carrying the team and WHICH resolution failed. Not durable: the refusal is a description of a configuration state, not a state transition, and it repeats every pass until the mapping is fixed — the durable fact is the mapping row itself. `always`-sampled: rare by design (a healthy tenant never emits it) and it is the ONLY machine-readable signal that a team's queue stopped advancing on purpose, which is exactly what a sampled-away point would hide. Repeats inside the DO's announce window are folded into `count`, never dropped.",
2085
+ sampling: { kind: "always" },
2086
+ },
2078
2087
  "orphans.reap-requested": {
2079
2088
  reason:
2080
2089
  "Phase-agent worker-directory garbage collection. phase.terminal.reap-requested alone is 10,015 lines/mo — a periodic sweep re-requesting cleanup of already-terminal workers, not a discrete coordination fact worth replay.",