This RFC defines the protocol constraints for distributed deterministic execution in T81. It specifies how nodes participate in a shared canonical execution model, how state and commit order are synchronized, how conflicts are resolved, and how distributed execution remains subordinate to the same deterministic contract as local execution.
Distributed execution is the long-horizon version of the same problem already solved locally by deterministic execution, DPE, and governance surfaces. Without a protocol-level RFC, future distributed work would almost certainly drift into:
T81 needs a constitutional distributed model before it can safely claim that a computation remains the same across nodes.
A distributed execution must be interpreted as one canonical computation with multiple execution participants, not as loosely coordinated local computations.
Therefore:
The protocol may define roles such as:
Role names are flexible, but role semantics must be deterministic and explicit.
Distributed execution requires:
No node may interpret state identity using local path names, local clocks, or ephemeral runtime addresses.
Distributed execution must define a canonical commit order that all nodes can derive or verify.
Requirements:
Conflicts between distributed updates must be resolved by explicit deterministic rules.
Allowed examples:
Forbidden:
Every distributed execution claiming deterministic status must support replay and verification.
Required artifacts:
These artifacts must fit within RFC-0043’s conformance model.
Distributed execution must define deterministic behavior for:
Allowed responses:
Forbidden:
Distributed execution must not introduce a second, incompatible ordering or state model.
Distributed execution must preserve policy mediation and auditability.
Requirements:
Distributed execution is experimental / non-DCP by default.
Promotion requirements are stricter than local execution because:
No distributed surface may be treated as DCP merely because its local executor is DCP-verified.
Determinism considerations:
Safety considerations:
This RFC is future-facing and additive.
Compatibility rules:
All acceptance criteria are satisfied as of this date.
AC1 — Global state identity, commit identity, and conflict-resolution rules explicitly defined:
spec/tisc-spec.md §5.2.7 (“Distributed Deterministic Execution Protocol (RFC-0053)”)
defines three subsections covering these requirements: “Global State and Commit Identity”
mandates canonical state identifiers, canonical epoch/commit identifiers, canonical input
artifact identifiers, and explicit versioning semantics; “Global Ordering Rule” requires
canonical input, dependency, and conflict-resolution order; “Conflict Resolution” enumerates
the four allowed deterministic resolution strategies (canonical commit order, explicit
tie-break keys, canonical metadata winner selection, fail-closed rejection).
AC2 — Network arrival order explicitly excluded as a semantic ordering source:
spec/tisc-spec.md §5.2.7 “Global Ordering Rule” table explicitly lists “Network arrival
order” with the requirement “MUST NOT define semantics.” The “Conflict Resolution” subsection
lists “first packet wins” and “host clock or wall-clock precedence” as forbidden tiebreak
strategies. This exclusion is unconditional and normative.
AC3 — Replay/evidence artifacts defined for distributed execution:
spec/tisc-spec.md §5.2.7 “Replay and Evidence Requirements” enumerates five required
artifacts: canonical input set, canonical graph/state metadata, canonical commit ledger,
node participation records, and deterministic result hash or equivalent replay summary.
The section states these artifacts “MUST fit within the RFC-0043 conformance model,”
binding distributed execution to the same evidence standard as local verified surfaces.
AC4 — Fault/partition behavior deterministic and fail-closed or deterministically suspended:
spec/tisc-spec.md §5.2.7 “Fault and Partition Behavior” requires deterministic behavior
for all five failure scenarios (node failure, message delay, duplication, partition/quorum
loss, retry/rejoin), defines three allowed responses (deterministic abort, rollback to last
canonical commit, deterministic suspension), and forbids speculative continuation with
ambiguous semantics and silent local completion with later reconciliation.
AC5 — Distributed execution explicitly classified as experimental / non-DCP until separately promoted:
spec/tisc-spec.md §5.2.7 “DCP Boundary Rule (RFC-0053)” states: “Distributed execution
is experimental / non-DCP by default.” It enumerates three reasons promotion requirements
are stricter (state synchronization, network fault surfaces, larger replay/ledger obligations)
and explicitly forbids inheriting DCP status from a DCP-verified local executor. The
docs/governance/DETERMINISM_SURFACE_REGISTRY.md §4 lists “Distributed Execution” under
“Experimental / Planned” with the gate: “must satisfy RFC-0053 before deterministic claims
are expanded.”