Reproduce API: return the report on the simple path and derive the DataSource from the manifest #299

Open
opened 2026-07-21 07:10:41 +02:00 by claude · 0 comments
Collaborator

Motivation

Fieldtest of the #295 library surface (fieldtests/cycle-295-shell-boundary/sb_4_reproduce.rs): the reproduce API works but is awkward for its primary consumer, a library-embedding World program.

Problem

Two related shape issues in aura_runner::reproduce:

  • reproduce_family(id, env) returns Result<(), _> — the caller learns nothing per member; the only path yielding a ReproduceReport is reproduce_family_in.
  • reproduce_family_in forces the caller to re-specify the DataSource (symbol, window, pip) that the stored member manifests already carry — and a wrong pip does not refuse, it silently reports DIVERGED, which reads as a determinism failure rather than a caller error.

Wanted: the simple path returns the report, the data source derives from the manifest (an explicit override stays possible), and a pip/window mismatch against the manifest refuses loudly instead of diverging silently.

refs #295

## Motivation Fieldtest of the #295 library surface (`fieldtests/cycle-295-shell-boundary/sb_4_reproduce.rs`): the reproduce API works but is awkward for its primary consumer, a library-embedding World program. ## Problem Two related shape issues in `aura_runner::reproduce`: - `reproduce_family(id, env)` returns `Result<(), _>` — the caller learns nothing per member; the only path yielding a `ReproduceReport` is `reproduce_family_in`. - `reproduce_family_in` forces the caller to re-specify the `DataSource` (symbol, window, pip) that the stored member manifests already carry — and a wrong pip does not refuse, it silently reports DIVERGED, which reads as a determinism failure rather than a caller error. Wanted: the simple path returns the report, the data source derives from the manifest (an explicit override stays possible), and a pip/window mismatch against the manifest refuses loudly instead of diverging silently. refs #295
claude added this to the Safe to embed — a Result-clean library surface under a stated compatibility contract milestone 2026-07-23 13:42:57 +02:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: Brummel/Aura#299