Skip to content

Commit f2c5df8

Browse files
committed
docs: timing-aware recording, replay, and --replay-speed flag
1 parent 3953eb9 commit f2c5df8

2 files changed

Lines changed: 13 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,15 @@
44

55
### Added
66

7+
- **Timing-aware recording and replay** — proxy recording captures per-frame
8+
arrival timestamps as `recordedTimings` on fixtures. Replay uses recorded
9+
timings for approximate timing reproduction based on recorded TTFT and
10+
inter-frame cadence instead of the synthetic model. Replay chunk count may
11+
differ from recording chunk count — TTFT and average pace are preserved,
12+
not per-token fidelity. `--replay-speed N` multiplier applies to all delay
13+
sources (recorded timings, streaming profiles, global latency). Per-fixture
14+
`replaySpeed` override. Covers SSE, NDJSON, Bedrock EventStream, and
15+
WebSocket protocols.
716
- **Gemini `embedContent` endpoint**`POST /v1beta/models/{model}:embedContent`
817
with deterministic fallback embeddings and fixture matching
918
- **`/v1/images/edit` and `/v1/images/variations` endpoints** — multipart

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ Run them all on one port with `npx @copilotkit/aimock --config aimock.json`, or
4949
## Features
5050

5151
- **[Record & Replay](https://aimock.copilotkit.dev/record-replay)** — Proxy real APIs, save as fixtures, replay deterministically forever
52+
- **Timing-aware recording and replay** — Recorded fixtures capture per-frame arrival timestamps; replay uses recorded timings for approximate timing reproduction based on recorded TTFT and inter-frame cadence (replay chunk count may differ from recording — TTFT and average pace are preserved, not per-token fidelity) with configurable `--replay-speed` multiplier
5253
- **[Multi-turn Conversations](https://aimock.copilotkit.dev/multi-turn)** — Record and replay multi-turn traces with tool rounds; match distinct turns via `turnIndex`, `hasToolResult`, `toolCallId`, `sequenceIndex`, `systemMessage` (gate on host-supplied agent context), or custom predicates
5354
- **[14 LLM Providers](https://aimock.copilotkit.dev/docs)** — OpenAI Chat, OpenAI Responses, OpenAI Realtime (GA + Beta shim), Claude, Gemini (REST + embedContent), Gemini Live, Gemini Interactions, Azure, Bedrock, Vertex AI, Ollama (chat + embeddings), Cohere (chat + embed), ElevenLabs TTS — full streaming support
5455
- **Multimedia APIs**[image generation](https://aimock.copilotkit.dev/images) (DALL-E, Imagen), [image editing](https://aimock.copilotkit.dev/images) (/v1/images/edit), [text-to-speech](https://aimock.copilotkit.dev/speech) (OpenAI + ElevenLabs), [audio transcription](https://aimock.copilotkit.dev/transcription), [audio translation](https://aimock.copilotkit.dev/transcription) (/v1/audio/translations), [video generation](https://aimock.copilotkit.dev/video), [fal.ai](https://aimock.copilotkit.dev/fal-ai) (image / video / audio with queue lifecycle)
@@ -101,6 +102,9 @@ npx -p @copilotkit/aimock llmock --record --provider-openai https://api.openai.c
101102
npx -p @copilotkit/aimock llmock --record --provider-openai https://api.openai.com \
102103
--body-timeout-ms 180000
103104

105+
# Replay recorded fixtures at 2× speed
106+
npx -p @copilotkit/aimock llmock -p 4010 -f ./fixtures --replay-speed 2
107+
104108
# Convert fixtures from other tools
105109
npx @copilotkit/aimock convert vidaimock ./templates/ ./fixtures/
106110
npx @copilotkit/aimock convert mockllm ./config.yaml ./fixtures/

0 commit comments

Comments
 (0)