Skip to main content

packages/contracts/src/events/telemetry.ts

Metadata

Indexed Symbols

No indexed functions/methods detected in this file.

Markdown Headings (if applicable)

No markdown headings detected.

Source Preview

import { z } from "zod";

const baseTelemetry = z.object({
eventId: z.string().uuid(),
workspaceId: z.string().uuid(),
clientId: z.string().uuid(),
assetId: z.string().uuid(),
occurredAt: z.string().datetime(),
correlationId: z.string().uuid()
});

export const hostHeartbeatEventSchema = baseTelemetry.extend({
kind: z.literal("HostHeartbeat"),
data: z.object({
cpuLoadPct: z.number().min(0).max(100),
memoryUsedPct: z.number().min(0).max(100),
uptimeSeconds: z.number().int().nonnegative()
})
});

export const patchComplianceEventSchema = baseTelemetry.extend({
kind: z.literal("PatchCompliance"),
data: z.object({
compliant: z.boolean(),
missingCritical: z.number().int().nonnegative(),