// Package applicationresultv1 defines the neutral semantic contract that binds
// one durable Runtime command to its Runtime-owned terminal application result.
//
// The complete ExecutionRef appears once in the Connector V2 flowcommandv3
// payload. Runtime scopes the accepted command using trusted admission context,
// recomputes the ref digest from the persisted payload, and discloses state only
// for an exact (CommandID, ExecutionRefDigest) pair. Existing command payload
// versions do not acquire this binding retroactively.
//
// Runtime is the only owner allowed to create ApplicationResult. It commits the
// business effect and a nonempty typed terminal result atomically. A transport
// timeout therefore never permits the caller to infer failure or mint another
// execution; callers reconcile the same command/ref digest. Repeating a command
// must observe the byte-identical terminal ApplicationResult.
//
// This package is transport- and persistence-free. It neither publishes a wire
// service nor defines connector storage, workers, leases, or retry policy. Its
// initial release has no N-1 wire shape. Future wire publication must be
// additive, keep AcceptCommand unchanged for existing callers, and fail closed
// unless its mapper implements SemanticMappingRevision exactly.
package applicationresultv1
