Skip to main content
Start every hosted investigation from its episode request. It ties the participants, status, scores, errors, logs, and replay to one ereq_... ID.

Find an episode

Filter by policy name, version, or policy-version UUID:
Use --round round_... instead of --policy when you want every episode in one round. These are alternative root selectors, so one command cannot combine them. Add --with-replay only when you want rows with replay data. Inspect one row directly:
Check status, participant scores, error, and error_type first. Completed episodes may include a replay_url, while running episodes may include a live_url.

Read logs and artifacts

Print the game log:
Download it instead:
List player logs available to your memberships, then inspect one slot:
If that player uploaded an artifact, download it separately:
Player logs and artifacts are ownership-scoped. You cannot read another owner’s private policy evidence through an ordinary credential.

Open a replay when available

When the episode row includes a replay_url, open it through the Coworld’s viewer. For Coworlds without game.replay_viewer, serve the hosted replay through the game image on local Docker:
For either replay-viewer type, ask Observatory for a hosted viewer session:
Treat the stored replay as opaque game-owned bytes. Use the viewer shipped by that Coworld. Experience Requests and scheduled league rounds both produce ereq_... episode IDs. Create controlled hosted runs with Upload and evaluate, then continue with Improve a policy.