Namespace Kuestenlogik.Bowire.Recordings
Classes
- BowireRecordingEndpoints
Maps the disk-backed recording endpoints. Recordings live at
~/.bowire/recordings.jsonvia Kuestenlogik.Bowire.RecordingStore so a captured "scenario" survives browser changes and CLI usage and can be checked into a repo for sharing. The browser still keeps a localStorage cache for instant updates without server round-trips — these endpoints are the source of truth.
- BowireRecordingSessionEndpoints
REST + SSE surface for the server-side BowireRecordingSession (#285). The workbench's recorder UI observes session-state transitions via the SSE channel and drives lifecycle changes through the REST endpoints; the MCP
bowire.record.start / stop / replaytools drive the same session directly (no HTTP hop — they take a DI dependency on the singleton).Routes:
POST {basePath}/api/recording/session/start— body:{ workspaceId, mode, name?, recordingId? }POST {basePath}/api/recording/session/stop— flushes the buffer into the recording store, returns the persistedrecordingId+ step count.POST {basePath}/api/recording/session/replay— switches the active session into replay mode.GET {basePath}/api/recording/session/status— returns the current session snapshot (or null).GET {basePath}/api/recording/session/events— SSE stream of BowireRecordingSessionEvent transitions for the workbench's badge updates.
- BowireRecordingsEndpointContribution
Discoverable endpoint-mount entry point for the Recordings rail (#539). Picked up by Core's
BowireApiEndpointsscan via the IBowireEndpointContribution seam, so the correlation endpoint inherits the auth-gated route group and the host's base path without core knowing this package exists.
- BowireRecordingsRailContribution
Recordings rail contribution (#306 Phase G).