Skip to main content
GET
ReadWorkstreamLedgerAPI mirrors erdo_read_workstream_ledger: the allocator's

Authorizations

Authorization
string
header
required

An Erdo API key (erdo_api_...) or scoped token (erdo_token_...).

Path Parameters

workstreamSlug
string
required

Query Parameters

observations_per_experiment
integer<int32>
Required range: -2147483648 <= x <= 2147483647

Response

Success response

allocator_recommendation
AllocatorRecommendation is the allocator's whole read-only output for a · object

workstream: a per-bet action + posterior, plus the budget envelope it fit the recommendation inside. Deterministic — same ledger in, same recommendation out.

calibration
JudgeCalibrationStats is one judge's track record: how often its predictions · object[]

trust dial the loop uses to weight kills and screening. Empty until judges have made forecasts reality later measured. Each entry also carries its residual stream (misordered_examples) — the seed the loop hands to judge generation when a persistent disagreement pattern emerges.

child_portfolio
ChildPortfolioSummary is the bounded one-level projection a root workstream · object[]

It is deliberately one level deep: portfolio supervision does not require an unbounded graph traversal.

defects
ExperimentDefect is one human "this variant is broken" verdict from the ledger · object[]

ledger — the seeded complement to the misordered_examples each judge carries. A defect costs no conversion, so the residual stream can never surface it; the loop reads these alongside misordered_examples so judge generation can propose a lens for a failure only a human eye caught. Bounded per read.

experiments
ExperimentWithObservations pairs an experiment with its variants and the head · object[]
judged_bets
integer<int64>
open_attention_items
AttentionItem is one thing the engine wants a human to see or answer, · object[]
phases
WorkstreamPhase is an ordered step within a workstream. · object[]
random_arm_bets
integer<int64>

this project: how many measured bets skipped judge screening vs. were screened. The loop watches the split to keep the random arm alive (roughly one in ten) so it can price what the judges cost.

recent_events
WorkstreamEvent is one entry in a workstream's append-only, chronological log · object[]
recently_resolved_attention_items
AttentionItem is one thing the engine wants a human to see or answer, · object[]

that a human (or the expiry safe-default) resolved within the recent window. The loop reads these to act on ANSWERS to the escalations/choices it asked — a self-reconciling pass must be able to read back the human's reply, not just re-ask. Carries the answer + applied safe_default; newest first.

workstream
Workstream represents a piece of business work in motion. · object

Operational state machine for multi-step work (campaign launches, reports, monitors).