t81-foundation

AI OS-Object Bundle Consumption Contract

This document defines the narrowest current contract for consuming a canonical bounded-family bundle outside the immediate composition script or test that created it.

It is a consumer contract, not a new runtime surface.

Scope

This contract applies only to the current admitted bounded AI OS-object family:

It does not define:

What A Consumer May Assume

A consumer may assume that a valid bounded-family bundle is:

For the current admitted family, a consumer may rely on this exact field set:

  1. schema
  2. source_result_ref
  3. source_provenance_ref
  4. action_ref
  5. record_ref

Each *_ref field must be a CanonFS content-addressed artifact reference.

What The Bundle Means

The bundle is not just a summary.

It is the canonical object that points to the completed bounded chain:

That means a consumer can treat the bundle as the smallest object that names a full completed decision chain.

Current Family Reading

The interpretation of action_ref depends on the admitted family member:

The interpretation of record_ref is likewise family-specific, but it always points to the typed downstream record for that chain.

Minimum Consumer Workflow

The minimum current consumer workflow is:

  1. receive or locate a bundle ref
  2. read the bundle artifact from CanonFS
  3. inspect schema
  4. follow record_ref to the downstream typed record if family-specific fields are needed
  5. follow source_result_ref and source_provenance_ref if the consumer needs the underlying AI result or execution evidence

In other words:

What A Consumer Must Not Assume

A consumer must not assume:

Stability Boundary

This contract is intentionally narrow.

It freezes only what an external consumer needs to use a current family bundle without verbal explanation:

It does not yet freeze:

The narrow .v1 versioning boundary for the current family bundle is defined in AI_OS_OBJECT_BUNDLE_VERSIONING_BOUNDARY.md.

Relationship To Existing Family Docs

Use this document together with:

If a future change alters the bundle field set or its canonical role, this contract must be updated before that change should be treated as stable for external consumers.