Tracecraft epistemic report
Type: agentic-system-analyses/types/agentic-system-epistemic-report.md
Source-and-claim boundary
The question is whether Tracecraft checks retained content for truth, or instead preserves caller content and gives coordination state operational force. Scope, exclusions and source identity are see boundary and its Source register, SRC-1. External model hosts, backend internals and actual deployment grants remain excluded. Their missing evidence prevents conclusions about model reasoning, downstream compliance and universal service guarantees. No external model parameters are exposed by these SDK paths; external-host learning is not determinable from them.
This is a sparse overlay on the supplied runtime records. Direct inspection below checks dispatch and selected transformations/evaluators against that provisional account. No target execution occurred. Raw benchmark results and generated reports remain available but uninspected: numerical performance, observed invariants and causal benefit are not established here. Actual memory/message/artifact/transcript instances were not supplied, so individual propositions, their original sources and their truth are not determinable. Architecture can nevertheless be traced.
| Entry point or operation | SRC-1 source path | Coverage and evidence basis | Limit and conclusion prevented |
|---|---|---|---|
| CLI registration | sdk/tracecraft/cli/__init__.py |
Direct complete read; registered operations match supplied runtime | No additional model tool registry or content evaluator exposed in this dispatch |
| Init, backend and direct writes | sdk/tracecraft/store.py, sdk/tracecraft/s3.py, sdk/tracecraft/hf.py, sdk/tracecraft/cli/init_cmd.py |
Supplied RT-RTE-init-config, RT-CMP-get-store | Service authentication and deployed conditional-write behavior unobserved; direct writes bypass CLI checks |
| Memory set/get/history/list | sdk/tracecraft/cli/memory.py |
Direct complete read; RT-RTE-memory-write | No value-level semantic criterion in this path; attribution strings are not authenticated authorship |
| Send/inbox/delete and cursor | sdk/tracecraft/cli/messages.py, sdk/tracecraft/protocol.py |
Supplied RT-RTE-mail-exchange | No independent inspection of all cursor branches here; no system-complete delivery guarantee |
| Claim/complete/status/wait and git evidence | sdk/tracecraft/cli/steps.py |
Direct complete read; RT-RTE-step-control, EPI-RTE-git-files | Completion is not a correctness judgment; git failure becomes an ambiguous empty list |
| Agents and aggregate status | sdk/tracecraft/cli/agents.py, sdk/tracecraft/cli/status.py |
Supplied runtime account and RT-BAP-step-polling | Staleness is heartbeat age, not measured liveness; aggregate state is not transactional |
| Artifact upload/download/list | sdk/tracecraft/cli/artifacts.py |
Supplied RT-RTE-artifact-share | Opaque bytes; truth-aptness and later interpretation not determinable |
| Mirror, follow, follow-all and discovery | sdk/tracecraft/cli/session.py, sdk/tracecraft/harness/__init__.py, sdk/tracecraft/harness/hermes.py |
Direct flush read and Hermes row serialization; other discovery/control branches supplied by RT-RTE-session-mirror | Host content production and project isolation for non-Claude adapters not established |
| Redact | sdk/tracecraft/redact.py |
Direct complete read; EPI-RTE-regex-scrub | Pattern membership is not secret identity or transcript truth |
| Session show/stop/compact | sdk/tracecraft/cli/session.py |
Direct complete operation reads; RT-RTE-session-compact | Stop resets cursor, not retention or process cancellation; interrupted compact can duplicate later display |
| Shipped verification instruction | examples/hermes-agent/SKILL.md |
Direct complete read; EPI-RTE-read-verification, RT-BAP-agent-prompt | Requested read-back is not observed agent checking or semantic review |
| Benchmark evaluators | benchmarks/contention_bench.py, benchmarks/messaging_bench.py |
Direct selected trial/read-back functions; EPI-RTE-bucket-evaluation | Preflight/sweep/report and frozen results not independently assessed; no numerical or causal finding |
| Test/release checks | sdk/tests/test_v025_features.py, .github/workflows/ci.yml, .github/workflows/release.yml |
Direct memory test sample; workflow findings supplied by RT-RTE-package-release | Not exhaustive test adequacy; no observed passing CI or publication |
Consequential warrant claims are see RT-CLM-mirror-idempotence, RT-CLM-secret-redaction, EPI-CLM-git-truth and EPI-CLM-history-loss. These concern preservation, confidentiality and local evidence, not a declared general theory-production engine. The selected reads do not support an unqualified system-complete negative about all possible caller content or uninspected evaluation reports.
Epistemic-object inventory
| Object ID | Candidate truth-apt content or none | Claimed role | Evidence source ID and local anchor | Gap/limit |
|---|---|---|---|---|
| RT-OBJ-step-state | Caller declaration of work state; symbolic status also controls tooling | see record | SRC-1 sdk/tracecraft/cli/steps.py |
Complete names no substantive criterion, intended-use evidence or independent judge |
| EPI-OBJ-handoff | Optional note assertions, optional git-derived file list; next-action is a directive, not necessarily truth-apt | see record | SRC-1 sdk/tracecraft/cli/steps.py |
Mixed object split by consumers below; no supplied instance |
| RT-RTE-memory-write | Caller string may assert facts; key/writer/time are symbolic envelope | see record | SRC-1 sdk/tracecraft/cli/memory.py |
No semantic restrictions; metadata-only get preserves attribution, default get omits it |
| RT-RTE-mail-exchange | Caller message may assert facts or request actions | see record | SRC-1 sdk/tracecraft/cli/messages.py |
Acquired communication, not evidence of produced accepted knowledge |
| RT-RTE-artifact-share | Not determinable for arbitrary file bytes | see record | SRC-1 sdk/tracecraft/cli/artifacts.py |
No artifact contents or parser supplied |
| EPI-OBJ-session-parts | Records of host utterances/tools may contain assertions, outputs or directives | see record | SRC-1 sdk/tracecraft/cli/session.py |
A transcript records an assertion without endorsing it; redaction removes original details |
| EPI-RTE-bucket-evaluation | Computed owner-consistency and delivered-body-count propositions in test domains | see record | SRC-1 benchmarks/contention_bench.py, benchmarks/messaging_bench.py |
Evaluator source, not observed outcome; no truth oracle for message bodies |
Authority-route ledger
All rows are architectural findings. Observed activation is uninspected unless stated otherwise. Fields owned by supplied records are referenced rather than restated as new declarations. The same cited route appears in distinct functional rows deliberately: checking, disposition, retention and consumption have different licenses.
| Route ID | Route function | Architectural status | Object/candidate ID | Content/update relation | Transition or check target | Evaluator/condition and domain | Activation and timing | Possible or observed result | Implemented force | Epistemic authority and scope | Operational authority: behavior permitted, blocked, or changed | Behavioral-authority path: consumer, channel, force, horizon | Evidence source ID and local anchor | Claim IDs or none | Mismatch marker or none | Gap/limit |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| RT-RTE-memory-write | content transformation | implemented | see record | truth-apt transformation: acquisition/import | Caller value to envelope | Structural key validation, not value truth | see record | Stored text and attribution | Software vetoes invalid key only | Source warrant unknown; value not endorsed | Allows valid-key write | see record | SRC-1 sdk/tracecraft/cli/memory.py |
none | none | Human/model authorship unresolved |
| RT-RTE-memory-write | retention | implemented | see record | no content change | History then live value | Timestamp/unique key, ordinary overwrite | see record | Snapshot plus current value | Persistence and explicit reads | Availability and claimed attribution only | Later get/history deliver text | see record | SRC-1 sdk/tracecraft/cli/memory.py |
EPI-CLM-history-loss | Immutable is not enforced | Direct writes/deletes and partial failure remain possible |
| RT-RTE-mail-exchange, RT-RTE-artifact-share | operational admission/selection/consumption | implemented | see records | no content change | Retained mail/files to requesting reader | see records | see records | Printed or downloaded content | Delivery, not content execution | No semantic warrant added | Reader can receive selected retained data | see records | SRC-1 sdk/tracecraft/cli/messages.py, sdk/tracecraft/cli/artifacts.py |
none | none | Truth-aptness of artifacts indeterminate; mail source warrant unknown |
| RT-RTE-step-control | check/evidence production | implemented | RT-OBJ-step-state | no content change | Claim conflict and completion ownership | Conditional service write or agent-string comparison | see record | Conflict/mismatch or admissible completion | Structural/cooperative veto | License over claim admission only | Rejects competing claim or mismatched completion unless override | see record | SRC-1 sdk/tracecraft/cli/steps.py |
none | none | HF arbitration differs; not work evaluation |
| RT-RTE-step-control | disposition/acceptance | implemented | RT-OBJ-step-state, EPI-OBJ-handoff | truth-apt transformation: acquisition/import | Caller outcome declaration | Caller flags; no semantic evaluator | see record | Complete, blocked, needs_review | Persists declaration | Operational admission, not evidence-consuming epistemic acceptance | Makes symbolic state available to polling | see record | SRC-1 sdk/tracecraft/cli/steps.py |
none | none | No separate reviewer required to clear review state |
| RT-BAP-step-polling | operational admission/selection/consumption | implemented | RT-OBJ-step-state | no content change | Dependency readiness | Fixed status comparison | see record | Return, wait or error | Enforcing within waiter | Status equality only, not actual completed-work truth | Complete permits return; blocked fails | see record | SRC-1 sdk/tracecraft/cli/steps.py |
none | none | No control over external work; complete precedes handoff write |
| EPI-RTE-git-files | check/evidence production | implemented | EPI-OBJ-handoff | truth-apt transformation: acquisition/import | Local tracked diff paths versus HEAD | Git exit status and name output | see record | List or empty fallback | Optional field writer | Conditional local diff evidence, not all activity | Handoff receives changed_files | see record | SRC-1 sdk/tracecraft/cli/steps.py |
EPI-CLM-git-truth | Empty conflates failure and no tracked change | Untracked files, committed changes and content correctness outside license |
| RT-RTE-session-mirror | content transformation | implemented | EPI-OBJ-session-parts | truth-apt transformation: acquisition/import | Host records into delta stream | see record | see record | File bytes or serialized Hermes rows | Imports records | Original assertion warrant unknown; attribution retained only to extent host data supplies it | Makes host records available for retention | see record | SRC-1 sdk/tracecraft/harness/hermes.py, sdk/tracecraft/cli/session.py |
none | none | Imported host claims are not Tracecraft-produced conclusions |
| EPI-RTE-regex-scrub | content transformation | implemented | EPI-OBJ-session-parts | truth-apt transformation: indeterminate | Byte-pattern replacement | Regex membership, not proposition truth | see record | Redacted bytes plus counts | Replaces matching substrings before mirror upload | Original matched details unavailable; untouched assertion warrant still unknown | Consumer sees modified stream | see record | SRC-1 sdk/tracecraft/redact.py |
RT-CLM-secret-redaction | No privacy/truth equivalence | Cannot establish semantic preservation for arbitrary transcripts |
| RT-RTE-session-mirror | retention | implemented | EPI-OBJ-session-parts | no content change | Transformed delta to bucket parts/meta/cursor | see record | see record | Durable transformed trace | Storage and later show | No semantic endorsement | Explicit show can retrieve parts | see record | SRC-1 sdk/tracecraft/cli/session.py |
RT-CLM-mirror-idempotence | Replay possible after cursor failure | Stop does not withdraw retained assertions |
| RT-RTE-session-compact | content transformation | implemented | EPI-OBJ-session-parts | truth-apt transformation: non-ampliative reshaping | Ordered part bytes to concatenation | Fixed byte-copy code | see record | Same byte sequence on completed normal path | Storage-layout replacement | No new semantic warrant | Show reads merged content after originals removed | see record | SRC-1 sdk/tracecraft/cli/session.py |
none | none | Partial completion changes replay multiplicity; lineage metadata loses per-part detail |
| EPI-RTE-read-verification | check/evidence production | doctrine only | Caller retained state | no content change | Write/read correspondence | Host agent interpreting matching reads | see record | Potential write verification | Advisory instruction only | At most write/read agreement; not truth of value | Requests subsequent read or recipient confirmation | see record | SRC-1 examples/hermes-agent/SKILL.md |
none | none | No checked result or uptake supplied |
| EPI-RTE-bucket-evaluation | check/evidence production | implemented | Trial results | truth-apt transformation: entailed derivation | API outcomes versus durable owner; intended sends versus distinct bodies | Fixed arithmetic/equality under trial inputs | see record | Invariant boolean, duplicate/loss counts | Trial reporting only | Conditional conclusions in configured benchmark domain | Invalidates trial on unexpected errors; records result | see record | SRC-1 benchmarks/contention_bench.py, benchmarks/messaging_bench.py |
none | none | No route from these results to acceptance of message meaning or automatic SDK policy revision |
No lifecycle integration after semantic acceptance is evidenced by these inspected writes/readers: they are retention and operational use before any such acceptance. This is a bounded account of these mechanisms, not a negative about what an external agent might implement. CI/package disposition is separately see RT-RTE-package-release: packaging checks have publication force, but neither sampled storage assertions nor release smoke checks judge the truth of retained claims.
System-claim versus route comparison
| Claim ID | Claimed operation or warrant | Claim source ID/anchor and evidence layer | Doctrine/design support | Implemented route IDs | Observed-run support | Causal support and design limits | Supported conclusion | Mismatch/unknown |
|---|---|---|---|---|---|---|---|---|
| RT-CLM-mirror-idempotence | see record | SRC-1 sdk/tracecraft/cli/session.py; doctrine/design |
see record | RT-RTE-session-mirror | Uninspected | No intervention evidence | Cursor suppresses normal repeated ingestion | Part success before cursor write permits repeated bytes |
| RT-CLM-secret-redaction | see record | SRC-1 sdk/tracecraft/redact.py; doctrine/design and implementation |
Explicit denylist limits | EPI-RTE-regex-scrub | Uninspected | No disclosure experiment | Recognizable shapes replaced and counted | Counts do not establish all secrets removed or original truth preserved |
| EPI-CLM-git-truth | see record | SRC-1 sdk/tracecraft/cli/steps.py; doctrine/design |
Optional non-hand-typed list | EPI-RTE-git-files | Uninspected | No support for quoted frequency claim | Imported tracked diff paths when subprocess succeeds | Not exhaustive work evidence; failure/no-change both empty |
| EPI-CLM-history-loss | see record | SRC-1 sdk/tracecraft/cli/memory.py; doctrine/design |
Append snapshot before overwrite | RT-RTE-memory-write | Uninspected | No crash/durability experiment | Normal CLI set creates historical copy | No enforced immutability or unconditional no-loss guarantee |
Bounded conclusion
Tracecraft retains and retrieves caller assertions, messages, handoff text, arbitrary artifacts and host records without licensing their substantive truth. The memory writer records attribution and time, but default get prints only the value; historical availability and freshness are not endorsement. Messages and artifacts supply selected data to later invocations; external-agent interpretation and compliance remain unobserved. Evidence is see RT-RTE-memory-write, RT-RTE-mail-exchange and RT-RTE-artifact-share.
Step status has concrete enforcing force at the dependency waiter, not merely advisory text. Complete permits return, blocked raises and review-needed waits. The completion writer admits the caller's outcome without an evidence-consuming criterion for work correctness. Clearing review does not require a separate reviewer. The handoff's directive has no implemented scheduler consumer here, and its optional changed-files field imports a narrower local Git measurement. These paths give operational authority without semantic acceptance: see RT-RTE-step-control, RT-BAP-step-polling and EPI-RTE-git-files.
Mirroring acquires host-produced content whose source warrant is unknown. Redaction deliberately degrades access to original matched details; it does not verify the remaining assertions. Compaction preserves ordered bytes on the completed normal path, not meaning by a new inference, and interrupted cleanup can duplicate displayed material. Show selects tail lines, not a resumed model conversation. Stop removes local cursor and stamps metadata, not epistemic withdrawal. See EPI-RTE-regex-scrub, RT-RTE-session-mirror and RT-RTE-session-compact.
There are narrow truth-apt checks: benchmark equality/arithmetic derives propositions from supplied trial outcomes and durable reads; the memory test compares returned v2 to a reference outcome. Their premises would require execution evidence for actual result claims. They do not check message meaning, explanation quality, transfer or model reasoning. The Hermes read-verification instruction requests a possible check but supplies no operative checked result. No demonstrated learning benefit, reflective criticism loop or exercised self-improvement follows from retaining raw traces or reporting storage results. These independent properties remain unestablished within these routes, not disproved for excluded hosts. See EPI-RTE-bucket-evaluation, EPI-RTE-read-verification and RT-RTE-package-release.
Shared records
Operative objects
EPI-OBJ-handoff
Label: Structured handoff
Part of: RT-RTE-step-control
Material output of that route, not a replacement for its claim/status control account. Source-native identity: steps/<sid>/handoff.json; bucket JSON contains natural-language note/next-action, symbolic state/recipient/schema and optional symbolic changed_files. No counterpart object for the handoff is declared in supplied runtime; RT-OBJ-step-state is the separate claim/status pair. The status poller reads that pair rather than the handoff. SRC-1 implementation, sdk/tracecraft/cli/steps.py:
store.put_json(f"steps/{sid}/handoff.json", handoff) ---
sdk/tracecraft/cli/steps.py
EPI-OBJ-session-parts
Label: Transcript parts
Part of: RT-RTE-session-mirror
Material retained output of the route, not another declaration of mirroring. Source-native identity: numbered part-*.jsonl objects; substrate is configured bucket. Form is serialized host records containing natural language and symbolic tool/row metadata; opaque content remains possible. RT-RTE-session-compact later rearranges these same objects. No counterpart operative-object declaration in supplied runtime. SRC-1 implementation, sdk/tracecraft/cli/session.py:
part_key = f"{_session_prefix(harness_name, sess.session_id)}part-{seq:05d}-{uniq}.jsonl" ---
sdk/tracecraft/cli/session.py
Hermes is a source-supported alternative to literal byte copying: rows are serialized, with content decoding while tool_calls/reasoning_details remain strings. It does not produce a summary or test the assertions in those rows. SRC-1 implementation, sdk/tracecraft/harness/hermes.py:
lines.append(json.dumps(d, default=str, ensure_ascii=False)) ---
sdk/tracecraft/harness/hermes.py
Routes
EPI-RTE-git-files
Label: Optional git evidence
Part of: RT-RTE-step-control
Distinct material evidence-producing subroute. Caller opts into --changed-files-from-git; _git_changed_files calls Git, parses names and inserts changed_files into handoff. Caller proposes completion; code chooses the reference measurement; no human approval of each path or answer oracle for work correctness is established. Open coordination request. Failure yields [] rather than a veto. Guidance and persisted result are see EPI-CLM-git-truth. No automatic policy adaptation or rollback follows; a later completion can overwrite handoff.
- Immediate return: List of stripped nonempty diff output lines, or [] on nonzero exit/exception.
- Later read-back: Persisted changed_files can be read through direct store access to handoff.
- Delegated visibility: Bucket readers can see the optional field.
- Selection predicate: Explicit flag; fixed git diff --name-only HEAD in caller's working directory.
- Invalidation or expiry: Handoff overwrite; field is not refreshed by later commits or file changes.
- Activation or effect: Inserts machine-derived paths into handoff; downstream interpretation unobserved.
- Evidence limits: No execution supplied; excludes untracked paths and cannot certify completed work; empty is ambiguous.
- implementation conclusion status: wired
- operation conclusion status: uninspected
SRC-1 implementation, sdk/tracecraft/cli/steps.py:
["git", "diff", "--name-only", "HEAD"], ---
sdk/tracecraft/cli/steps.pyif out.returncode != 0: return [] ---
sdk/tracecraft/cli/steps.py
EPI-RTE-regex-scrub
Label: Regex scrub and counts
Part of: RT-RTE-session-mirror
A transformation subroute, not semantic acceptance. Source-native redact consumes bytes, applies denylist patterns sequentially and returns replacement bytes/counts to mirror. Code decides substring removal; no human/model judgment or secret/truth oracle. Caller selects activation through mirror options. Open ingestion. Counts and altered bytes persist; source bytes are not overwritten by this routine, and restoration would require original host material. RT-CLM-secret-redaction owns the claim.
- Immediate return: Replacement bytes and nonzero pattern counts.
- Later read-back: Mirror parts carry altered bytes; metadata stores cumulative counts.
- Delegated visibility: Bucket readers receive scrubbed parts and counts, not removed originals through this path.
- Selection predicate: Byte regex membership, unless --no-redact bypasses the call.
- Invalidation or expiry: No rule-driven re-scrub of already retained parts; later source/package revision changes future calls.
- Activation or effect: Replaces matched substrings before mirror upload; no behavior-shaping model consumer inspected.
- Evidence limits: No run supplied; arbitrary secrets and split-chunk matches not covered; counts do not license original truth.
- implementation conclusion status: wired
- operation conclusion status: uninspected
SRC-1 implementation, sdk/tracecraft/redact.py:
("aws_access_key", re.compile(rb"AKIA[0-9A-Z]{16}")), ---
sdk/tracecraft/redact.pyout, n = pat.subn(f"[REDACTED:{name}]".encode(), out) if n: counts[name] = n ---
sdk/tracecraft/redact.py
Concrete source deduction, not execution: input bytes key=AKIA1234567890ABCDEF match the 16-character uppercase/digit suffix. The AWS rule changes them to key=[REDACTED:aws_access_key] and records aws_access_key count 1. Later patterns do not match this replacement. This establishes loss of the literal credential-like value, not that the input was a real credential. In an arbitrary sentence or structured record such replacement can change a proposition or its parseability, so semantic preservation/entailment is indeterminate; no ampliative conjecture is inferred just from that uncertainty.
EPI-RTE-read-verification
Label: Requested read verification
Distinct doctrine-only checking request, compared with RT-BAP-agent-prompt, which owns the broader instruction delivery path, and RT-RTE-memory-write/RT-RTE-mail-exchange, which own executable reads/writes. The Hermes host agent is instructed to compare write/read results. No automatic comparator, recorded criterion outcome or acceptance disposition is implemented by this Markdown. Human/model compliance is unresolved; an expected prior write could be a reference for correspondence, not an answer oracle for substantive truth. Open coordination use, not a bounded experiment.
- Immediate return: inapplicable — static skill instruction returns no checked result.
- Later read-back: Requested memory get, recipient inbox or step-status reads retained state.
- Delegated visibility: Send verification explicitly asks a recipient to read inbox.
- Selection predicate: Corresponding read command after the named action.
- Invalidation or expiry: inapplicable — no persisted check result or acceptance state is specified.
- Activation or effect: Advisory request only; actual comparison and changed reliance unobserved.
- Evidence limits: No host loading/compliance trace; read success alone does not certify message meaning.
- doctrine conclusion status: claimed
- operation conclusion status: uninspected
SRC-1 doctrine/design, examples/hermes-agent/SKILL.md:
After any action, verify with the corresponding read command: - After
memory set→memory get- Aftersend→ ask the recipient to checkinbox- Afterclaim→step-status---examples/hermes-agent/SKILL.md
EPI-RTE-bucket-evaluation
Label: Bucket benchmark evaluation
No counterpart benchmark route is declared in supplied runtime; RT-RTE-step-control and RT-RTE-mail-exchange are product routes whose primitives the evaluators exercise, not these test drivers. Two fixed evaluators remain separate in license: contention compares API winners to durable owner; messaging compares intended sends to distinct retained bodies. Script caller chooses conditions; software performs writes, counts and judges equality. Human initiation/interpretation unresolved. Reference outcomes are one consistent winner and sent distinct bodies, not truth oracles for payload text. Bounded experimental mode. Exceptions invalidate contention trials; results report rather than admit product content. Contention deletes its trial key after evaluation; deletion failure is swallowed, and the inspected function does not confirm deletion despite its comment. No feedback consumer modifies the SDK policy in these functions.
- Immediate return: Contention Trial fields including invariant_held/valid; messaging sent, delivered_keys, distinct_messages, lost and errors.
- Later read-back: Fresh backend client retrieves claim owner or messages within the trial; publication/retention of resulting reports uninspected here.
- Delegated visibility: Test objects use configured bucket access; distribution of results uninspected.
- Selection predicate: Unique trial claim key or configured recipient mailbox; selected concurrency/key scheme and optional stagger.
- Invalidation or expiry: Trial cleanup attempts claim deletion; no epistemic rollback or product content acceptance state.
- Activation or effect: Deterministic result computation; no actual trial or downstream policy revision observed.
- Evidence limits: Source only; service correctness, supplied benchmark result authenticity and causal comparisons not assessed. Key counts are not end-user inbox delivery or message truth.
- implementation conclusion status: wired
- operation conclusion status: uninspected
SRC-1 implementation, benchmarks/contention_bench.py:
t.invariant_held = ( t.valid and win_count == 1 and t.stored_owner == t.declared_winner ) ---
benchmarks/contention_bench.py
SRC-1 implementation, benchmarks/messaging_bench.py:
"distinct_messages": len(bodies), "lost": sent - len(bodies), ---
benchmarks/messaging_bench.py
The stagger control affords testing a simultaneous-contention hypothesis, but without inspected intervention results it supports no causal finding. The treatment changes launch timing, not independently isolated backend components. Sampled SDK test supplies a different fixed reference outcome, not a semantic oracle. SRC-1 implementation, sdk/tests/test_v025_features.py:
r = env.invoke(cli, ["memory", "get", "k"]) assert r.output.strip() == "v2" ---
sdk/tests/test_v025_features.py
Claims
EPI-CLM-git-truth
Label: Git source of truth
Part of: RT-RTE-step-control
A design/warrant claim attached to that route's optional evidence producer, not the runtime's mechanism declaration. SRC-1 doctrine/design, sdk/tracecraft/cli/steps.py, claims local Git is authoritative for changed paths and self-reported lists are unreliable. No evidence for the frequency estimate is supplied by this implementation.
Git is the source of truth for what changed — we never let an agent type the file list by hand (self-reported change lists are wrong ~half the time and go stale on the next commit). ---
sdk/tracecraft/cli/steps.py
EPI-CLM-history-loss
Label: Immutable no-loss history
Part of: RT-RTE-memory-write
Design claim about its retention subfunction, not another declaration of the writer. SRC-1 doctrine/design, sdk/tracecraft/cli/memory.py, claims every set appends an immutable snapshot and no version is ever lost. Implementation gives snapshot-before-live ordering, not object immutability, transactional success or universal backend durability. Direct wrapper mutation is the counterroute supplied in runtime's forcing cases.
Every set also appends an immutable snapshot under memory/_history/, so the current value is last-write-wins but no version is ever lost. See
memory history. ---sdk/tracecraft/cli/memory.py
Normal ordering evidence is see RT-RTE-memory-write. No semantic repair of that supplied route is needed: it already limits immutable-history claims to a nontransactional, directly mutable implementation.