1import type { RuntimeStartupFailure } from "./startup-recovery.ts";23/**4// Package-owned runtime diagnostics.5 * Runtime-owned observability counters. These describe the framework's storage,6 * subscription, and write machinery and never reference any application schema.7 */8export type RuntimeDiagnostics = {9 storageState: "persistent-requested" | "persistent-driver-open" | "failed";10 startupFailure: RuntimeStartupFailure | null;11 clientsCreated: number;12 activeClients: number;13 activeConsumers: number;14 activeVendorSubscriptions: number;15 totalVendorSubscriptions: number;16 activeMutationListeners: number;17 totalMutationListeners: number;18 unsubscribeCalls: number;19 localWaitCalls: number;20 pendingLocalWrites: number;21 pendingGlobalWrites: number;22 lastWriteDurability: "none" | "local" | "global" | "failed";23 mutationErrors: number;24};2526export function createDiagnostics(): RuntimeDiagnostics {27 return {28 storageState: "persistent-requested",29 startupFailure: null,30 clientsCreated: 0,31 activeClients: 0,32 activeConsumers: 0,33 activeVendorSubscriptions: 0,34 totalVendorSubscriptions: 0,35 activeMutationListeners: 0,36 totalMutationListeners: 0,37 unsubscribeCalls: 0,38 localWaitCalls: 0,39 pendingLocalWrites: 0,40 pendingGlobalWrites: 0,41 lastWriteDurability: "none",42 mutationErrors: 0,43 };44}