Field comparison: ASIF v0.1 and existing specifications¶
Research date: 2026-09-26. This compares the earlier ASIF design's requirements against specific source revisions. It is a document/schema review, not runtime certification or a proof of ecosystem adoption.
The comparison columns retain that research snapshot. The ASIF 0.4 disposition column now refers to the active 0.4 session specification, superseding the preservation-only experiment. Linked field names lead to their definitions; future profiles are explicitly identified.
Legend: D directly modeled; P partially modeled or different semantics; E possible via extension/custom payload, without a portable core contract; N no equivalent core contract found. E/N means extension work, not impossibility. “Native” below refers to the captured vendor representation, not merely a model API item.
| Earlier ASIF field/requirement | Agent Session Format | ATIF | VAC / vCon | ASIF 0.4 disposition |
|---|---|---|---|---|
| Format version | D format |
D schema_version |
D version |
asif_version identifies the session contract. |
| Logical session identity | D header id |
P run session_id |
D session-id |
session.id and session.native_ids separate logical and provider-scoped identities. |
| Capture/document identity | P session file | D trajectory_id |
D record id |
capture.id identifies an immutable capture, distinct from the session. |
| Producer/vendor version | D harness |
D agent |
D recording-agent |
capture.producer records exporter name/version; participants and executions carry known provider/model facts. |
| Several models per session | D config/response |
D step override | D models |
Execution model settings and context model settings are scoped per use. |
| Message parts | D item |
D message |
D message content | Ordered parts: text, resource, structured or opaque. |
| Opaque reasoning | D payload items | P reasoning/extra |
D reasoning entry | opaque parts and semantic_type preserve legitimately exportable recorded content without inventing hidden reasoning. |
| Tool-call/result linkage | D payload call ID | D call/observation IDs | D call-id |
tool_call / tool_result and call_id, including result indexes and terminal status. |
| Branch structure | D parent |
P separate trajectories | P parent/children | branches, event_ids, head_event_id and fork define selected history explicitly. |
| Multiple causal predecessors | P parents provenance |
E extra |
E additional metadata | Event causes retain causal links independently of serialized and branch order. |
| Subagent links | D link |
D subagent references | P parties/branches | Participant parent and child-session references identify delegation; child history is not implicitly included. |
| Execution boundaries | D run |
P run scope | E system events | executions and execution_transition record observed lifecycle. |
| Pending call/decision | D dispatch/decision |
E extra |
E system events | Checkpoint open_calls and open_decisions distinguish evidenced pending state from unknown outcome. |
| Decision observer/confidence | E decision detail | E extra |
E event data | Event actor_id and provenance.mode distinguish attribution and observed/reported/derived evidence; no separate confidence scale is defined. |
| Compaction | D compaction |
P copied-context flag | E system events | contexts and context_checkpoint retain selected inputs, summary provenance and prior-context linkage. |
| Effective request settings | D config |
P agent/tool definitions | E metadata | Context inputs, tool_ids, configuration_id and request parameters, with explicit fidelity. |
| Request reconstruction proof | D request_hash |
E extra |
P record signature | Context conformance evidence is separate from authenticity; no standardized request hash or cryptographic proof is defined. |
| Usage and costs | D response |
D metrics | D token usage | usage scope, unit, value and delta/cumulative classification; no universal pricing model is defined. |
| External media | D media |
D path references | D attachments | resources.availability and locator; external content is not fetched automatically. |
| Working-directory context | D env |
E extra |
D environment | environments describe logical roots/dependencies; paths do not authorize destination access. |
| Native transcript/store bytes | E custom/sidecar | E extra |
P trace/attachments | Native resources and coverage preserve opaque evidence; native import contracts are specified, with real adapter testing still required. |
| Exact artifact inventory/digests | P media layout | P media paths | P attachments/signing | Embedded resources.bytes, sha256 and text / data / path bind declared content; the optional package inventory binds transported members. |
| Native record byte provenance | E custom metadata | E extra |
E entry metadata | provenance.sources and byte locators identify source resources, offsets and lengths. |
| Capture coverage/unknowns | P header records |
P notes | E metadata | coverage declares complete, partial, known-empty, unavailable, excluded, uninspected or inapplicable scope. |
| Redaction/transformation ledger | P export behavior | E extra |
P redaction discussion | losses identify affected scope/references; sanitized resources have separate identities. |
| Complete portable configuration | E custom |
E extra |
E attachments | configurations capture instructions/capabilities/policies; cross-runtime equivalence remains unresolved. |
| Workspace state/checkpoints | E env detail |
E observations | P file artifacts | environments describe dependencies; checkpoints describe session state. Workspace/path rules are now specified; the reference restores selected plain file trees; full Git/link fidelity remains open. |
| Unknown-field retention | D reader rule | P extension points | P extensible maps | Unknown optional fields and required_features define retention and refusal behavior. |
| Source-to-target import contract | P resume model | N | N | Continuation consumers assess prerequisites and report mappings; continuation conformance needs real runtime evidence. |
| Cryptographic authenticity | P request hash | N | D signing | Resource digests bind content; the optional detached signature convention authenticates package bytes under a trusted key. |
Source definitions and reproducibility¶
- Agent Session Format — pinned RFC, sections Header, Entry envelope, Core entry types, Context building, Projections, Conformance. The fetched source says draft 0.4, but its header example still says 0.3. Treat this as an upstream clarification request; do not claim a conforming 0.4 exporter from the heading alone.
- ATIF — pinned RFC, sections Root-Level Metadata, StepObject, Observation, SubagentTrajectoryRef, Implementation. Its run-scoped
session_idis not a capture ID. That difference prevents a mechanical rename. - VAC revision 01, sections 3–4, especially session-trace, entries, and signed-agent-record. vCon Agent Session revision 00, sections 4–7, supplies the containing parties/dialog/analysis/attachments model. These are individual Internet-Drafts, not approved standards.
- Agent Session Protocol — pinned types is a secondary compatibility target, including permission request/response records. Its README documents normalized and native-sidecar paths. Native-sidecar architecture is existing prior art; this review did not execute its migration claims.
sources.json records fetched-document SHA-256 values and immutable URLs. Upstream texts were inspected locally but are not copied into this package.
Gap assessment¶
The comparison establishes no requirement that is impossible to carry in the existing formats' extension mechanisms. The actual gap is agreement: common meanings for source-artifact preservation, coverage, loss, resource closure, and consumer capability claims.
The earlier preservation-only design treated these agreements as a companion package. The active 0.4 specification instead defines ASIF session semantics directly, including events, branches, context and checkpoints. Its remaining gaps distinguish defined records from unresolved portability and implementation evidence. The comparison above does not establish conformance to that newer contract.
A signature authenticates a record under a key; it does not prove that the recorder observed all behavior. A request hash checks a reconstructed request; it does not prove that a native store will resume. These distinctions remain in ASIF regardless of the final container.