Files
PaperClipAI/packages/shared/src/telemetry/readme-contract.test.ts
T
Nicky LeachandPaperclip 69c55d465d Add telemetry data contract docs (#8886)
Adds the public telemetry data contract README, links it from contributor docs, and adds a focused README contract test for generated helper names.

Verification:
- git diff --check origin/master..HEAD
- pnpm exec vitest run packages/shared/src/telemetry/readme-contract.test.ts
- PR CI green
- Greptile 5/5

Co-Authored-By: Paperclip <noreply@paperclip.ing>
2026-07-02 12:38:03 -07:00

20 lines
870 B
TypeScript

import { readFileSync } from "node:fs";
import { fileURLToPath } from "node:url";
import { describe, expect, it } from "vitest";
import * as generatedTelemetry from "./generated/paperclip-telemetry.js";
const readmePath = fileURLToPath(new URL("./README.md", import.meta.url));
describe("telemetry README contract", () => {
it("documents generated event helper exports that exist", () => {
const readme = readFileSync(readmePath, "utf8");
expect(generatedTelemetry.SCHEMA_VERSION).toBeDefined();
expect(generatedTelemetry.makeEvent).toBeTypeOf("function");
expect(generatedTelemetry.makeBatch).toBeTypeOf("function");
expect(readme).toContain("`SCHEMA_VERSION`, `makeEvent()`, and `makeBatch()`");
expect(readme).not.toContain("createPaperclipTelemetryEvent");
expect(readme).not.toContain("createPaperclipTelemetryEnvelope");
});
});