diff --git a/docs/plans/phase-2-headless-adapter-development.md b/docs/plans/phase-2-headless-adapter-development.md
index 230cb37..fcf3012 100644
--- a/docs/plans/phase-2-headless-adapter-development.md
+++ b/docs/plans/phase-2-headless-adapter-development.md
@@ -87,11 +87,11 @@ Implement a `HeadlessAdapter` and its providers that simulate all engine operati
#### Technical details
- **HeadlessAdapter**: Implements `IEngineAdapter`. Composes headless providers for rendering, input, UI, assets, and audio. Currently returns `EngineCapabilities` (including `ContractVersion`) from the `Capabilities` property.
-- **HeadlessRenderProvider**: Implements `IRenderProvider`. Records all render commands (`SubmitSprite`, `SubmitText`, `SubmitMesh`) to an in-memory list for later inspection. `BeginFrame` returns a `FrameScope`; `EndFrame` and `Present` are no-ops.
+- **HeadlessRenderProvider**: Implements `IRenderProvider`. Records all render commands (`SubmitSprite`, `SubmitText`, `SubmitMesh`) to separate typed lists per draw type (`RecordedSprites`, `RecordedTexts`, `RecordedMeshes`) for later inspection. `BeginFrame` returns a `FrameScope`; `EndFrame` and `Present` are no-ops.
- **HeadlessInputProvider**: Implements `IInputProvider`. Provides deterministic, scriptable input state via methods such as `ScriptKeyDown`, `ScriptKeyUp`, and `ScriptMousePosition`.
- **HeadlessUserInterfaceProvider**: Implements `IUserInterfaceProvider`. Currently empty (pending final UI provider contract).
- **HeadlessAssetProvider**: Implements `IAssetProvider`. Manages asset cache and lifecycle state in memory without actual file or resource access. Composes a `HeadlessAssetLoader` (implementing `IAssetLoader`) that returns stub assets for any requested identifier.
-- **HeadlessAudioPlayer**: Implements `IAudioPlayer`. Records calls (`Play`, `Stop`, `SetVolume`) for test assertion.
+- **HeadlessAudioPlayer**: Implements `IAudioPlayer`. Records calls (`StartPlayback`, `StopPlayback`, `SetVolume`) for test assertion.
#### Phase requirements
@@ -119,7 +119,7 @@ using JohnLudlow.GameEngineAdapter.Core;
///
/// Simulates engine operations for headless, deterministic testing.
-/// Records all provider calls for verification.
+/// Exposes provider instances; individual providers may record their own calls for verification.
///
public sealed class HeadlessAdapter : IEngineAdapter
{
@@ -182,40 +182,31 @@ public sealed class HeadlessAdapter : IEngineAdapter
```
```csharp
-namespace JohnLudlow.GameEngineAdapter.Headless;
-
-using JohnLudlow.GameEngineAdapter.Core;
+// src/GameEngineAdapter.Headless/HeadlessRenderProvider.cs
-///
-/// Records render commands for verification without GPU interaction.
-///
public sealed class HeadlessRenderProvider : IRenderProvider
{
- private readonly List