e_read
Load full detail for specific SRs by ID.
Agent Guidance
This is the description the engine gives an agent for this tool, word for word.
Load full detail for specific SRs by ID. Input: sr_ids (list).
Each returned SR carries content, lane (its label) and lane_uuid, source_type,
authority_level, source_system, ingested_at, version (0 = never updated), and —
when present — is_conversational / is_file_content (only when true), properties (["label:value"]), adjustments ({token: [linked
sr_ids]}), and corrections (the superseding truth; retracted ones appear as
stubs, preserving provenance). IDs you can't read, or that don't exist, come back
under not_found. If an adjustment links to SRs outside your read scope, its
adjustments entry is empty and a root hint says so. This is where you read
evidence before reasoning; pair it with e_gather (which finds the IDs).
Example: e_read(sr_ids=["sr_abc123", "sr_def456"]).
as_of (a date or ISO datetime, e.g. "2026-03-01" = midnight UTC) reads each
SR in the state given by the entries written by that moment that this engine
holds, instead of now: its content, properties and lane then, with version and written_at (when that state was written). An SR
deleted by then comes back as deleted: true with deleted_at; one not written
yet is listed under not_yet_written. The time is when each change was
originally written — the same on every engine holding the same entries;
deletion is local. Corrections are not part of a past
state and are not shown. adjustment_tokens are the SR's own adjustment tokens
then; find the linked SRs with e_gather(action="traverse"). If the writing engine's clock was wrong, a change falls
at the time that clock said. Example: e_read(sr_ids=["sr_abc123"], as_of="2026-03-01").
Arguments
| Argument | Type | Default |
|---|---|---|
sr_ids | list of strings | required |
as_of | string | — |
agent_profile | string | — |