From 4fd658f9612a960c6b185e53fa52c064406dad4f Mon Sep 17 00:00:00 2001 From: Adam Malczewski Date: Fri, 5 Jun 2026 16:33:08 +0900 Subject: feat(observability): trace-replay — generic HTTP-exchange record/replay library (39 tests) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit New standalone package @dispatch/trace-replay: replayFetch (pure — fixture -> fetch double + captured request, optional chunking to simulate streaming), recordFetch (tees a real fetch into a fixture WITHOUT consuming the caller's stream), and serialize/parse + save/load fixture I/O. Redaction-free by design: calling extensions self-redact in their OWN code before saving (isolation over DRY, D5/§9). Zero @dispatch/* deps, no bun:sqlite (runs under vitest). The shared unit realizing the §7/D5 replay affordance for hermetic provider tests; provider-openai-compat will consume it next. Root tsconfig ref wired. Verified: tsc -b clean, 327 vitest (288 -> +39: replay 12 / record 8 / fixture 19), biome 0/0. Agent stayed in lane (packages/trace-replay only). --- tsconfig.json | 1 + 1 file changed, 1 insertion(+) (limited to 'tsconfig.json') diff --git a/tsconfig.json b/tsconfig.json index a824844..b0fd70a 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -12,6 +12,7 @@ { "path": "./packages/journal-sink" }, { "path": "./packages/trace-store" }, { "path": "./packages/observability-collector" }, + { "path": "./packages/trace-replay" }, { "path": "./packages/host-bin" } ] } -- cgit v1.2.3