Expand description
Internal implementation crate for OxideBatch.
This crate is implementation detail. Use
oxide-batch instead.
It exists on crates.io only because the published oxide-batch facade
depends on it. Its API carries no stability promise: items may be added,
changed, or removed in any release, without a deprecation period. It has no
supported-configuration matrix, no compatibility ledger row, and no
independent release cadence.
Everything here that OxideBatch supports is re-exported from oxide-batch
under a stable path.
The crate holds the metadata repository, unit-of-work, clock, identifier,
explorer, operator, retention, and recovery ports, the durable partition,
flow-decision, audit, retention, and recovery values those ports exchange,
the bounded operator request envelope, and the keyset pagination vocabulary
the explorer port pages with. It depends on no async runtime, database
driver, command-line framework, telemetry SDK, broker client, or web
framework, and on no OxideBatch crate other than oxide-batch-core.
Metadata adapters, the services that drive these ports, and the execution
engines live above this crate. The plan compiler is an independent sibling
in oxide-batch-plan, which this crate may not depend on.
§Items marked #[doc(hidden)]
Some items exist as #[doc(hidden)] pub only because the facade’s own code
was split from these types by the extraction boundary: private access that
one crate resolved by module privacy now crosses a crate boundary. They are
not part of any surface, supported or otherwise, and the facade never
re-exports one under its own name. The staged crate-extraction contract
records each one.
Structs§
- Actor
Ref - Deployment-supplied opaque reference to the authorized caller.
- Cursor
- An opaque keyset continuation token.
- Definition
Descriptor - A redacted description of the definition bound to one execution.
- Execution
Control - The owning runtime’s bounded observation of one durable execution control.
- Flow
Decision - One append-only, repository-authoritative selected transition.
- Flow
Decision Id - Opaque durable identifier of one selected transition.
- Flow
Decision Request - A validated transition awaiting repository allocation and commit.
- Flow
Decision Sequence - Positive, execution-local ordering of selected transitions.
- Flow
Step State - Latest durable attempt for one logical step, used to reconstruct restart.
- JobExecution
Projection - A redacted job execution projection.
- JobInstance
Projection - A redacted logical job instance projection.
- MaxClock
Skew - A bounded repository/local wall-clock skew tolerance.
- Monotonic
Instant - A runtime-neutral reading of one monotonic clock.
- Operation
Id - Caller-supplied idempotency key for one mutating action.
- Operator
Record - One append-only operator audit and idempotency record.
- Operator
Record Draft - The bounded audit row an adapter appends.
- Operator
Request - One validated mutating operator request.
- Owner
Token - A per-process 16-byte execution-owner token.
- Page
- One bounded page and its continuation token.
- Page
Request - One bounded page request.
- Page
Size - A validated page size in
1..=500. - Parameter
Descriptor - A redacted description of one job parameter.
- Partition
Aggregate - The deterministic result of aggregating one complete durable partition plan.
- Partition
Key - A stable byte-compared key within one partitioned step execution.
- Partition
Plan Entry - One validated entry in a partition plan before durable identity assignment.
- Partition
Result - A validated terminal result published by one assigned partition worker.
- Purge
Batch Bound - A validated purge batch bound in
1..=1000. - Purge
Candidate - One purge candidate and the version observed while planning.
- Purge
Counts - Per-table row counts of one purge plan or applied batch.
- Purge
Plan - One bounded, digest-guarded purge plan.
- Purge
Plan Request - One bounded purge planning request.
- Purge
Survey - The bounded candidate survey one adapter produces while planning.
- Query
Window - The bounded keyset window one adapter statement must honour.
- Reason
Code - Bounded closed-set machine reason code.
- Recovery
Decision - One append-only recovery audit record.
- Recovery
Evidence - Canonical evidence retained by one recovery proposal.
- Recovery
Markers - Closed boolean recovery markers retained as one bounded bit set.
- Recovery
Proposal - A validated, evidence-bound recovery proposal.
- Recovery
Request - Bounded, value-redacted request for one audited recovery decision.
- Recovery
Result - Result of atomically appending an audit decision and changing execution state.
- Recovery
Snapshot - One adapter-owned recovery snapshot gathered with repository server time.
- Recovery
Step Evidence - Redacted evidence for the latest durable step execution.
- Repository
Descriptor - The versioned capability descriptor a durable adapter publishes.
- Request
Digest - A framework-computed SHA-256 digest of one canonical request.
- Retention
Hold - One active retention hold on a logical instance.
- Retention
Record - One append-only retention audit record.
- Retention
Record Draft - The bounded retention audit row an adapter appends.
- Sequential
IdGenerator - A thread-safe nonzero identifier sequence suitable for local execution.
- Stale
Threshold - A bounded stale-execution threshold.
- State
Envelope Descriptor - A redacted description of one durable state envelope.
- Step
Execution Projection - A redacted step execution projection.
- Step
Partition - A durable partition plan row and its latest result snapshot.
- Step
Partition Projection - A redacted durable partition projection.
- System
Clock - An explicitly injected wall-clock implementation.
- System
Monotonic Clock - An application-owned system monotonic clock.
- Terminal
Status Set - A non-empty set of terminal statuses a purge may target.
Enums§
- Authorization
Class - The separately authorizable class of a service call.
- Cursor
Error - A rejected continuation token.
- Cursor
Key - The immutable ordering key of the last row returned by a page.
- Explorer
Error - A stable inspection failure independent of a database or async runtime.
- Explorer
Query - The closed set of paginated explorer queries.
- Flow
Transition Kind - Why one transition was selected.
- IdGeneration
Error - Failure from an injected identifier source.
- JobInstance
Selection - The result of selecting the canonical instance for an identifying key.
- Operator
Action - A mutating action a deployment authorizes and the core guards.
- Operator
Outcome Class - The durable class of one recorded operator request.
- Operator
Rejection - The typed reason one guard rejected an operator action.
- Owner
Observation - The durable owner-token observation relative to the inspecting process.
- Partition
Aggregation Error - A deterministic partition plan could not be aggregated safely.
- Partition
Value Error - Invalid public partition input.
- Recovery
Directive - The disposition of one recovery decision together with the evidence that disposition requires.
- Recovery
Disposition - Explicit operator disposition for an orphaned or ambiguous execution.
- Recovery
Error - A typed recovery-proposal failure.
- Recovery
Field - Recovery request field category.
- Recovery
Request Error - Invalid bounded recovery request.
- Repository
Capability - A separately negotiated durable repository capability.
- Repository
Error - A stable repository failure independent of a database or async runtime.
- Request
Field - A bounded request-envelope field category.
- Request
Field Error - An invalid bounded request-envelope field.
- Retention
Action - One audited retention action.
- Retention
Error - A typed retention failure.
- Retention
Outcome - The durable class of one recorded retention action.
Constants§
- DEFAULT_
MAX_ CLOCK_ SKEW - Default repository/local clock-skew bound.
- DEFAULT_
PAGE_ SIZE - Page size used when a caller does not choose one.
- DEFAULT_
PURGE_ AGE - Minimum age used when a caller does not choose one.
- DEFAULT_
STALE_ THRESHOLD - Default stale-execution threshold.
- MAX_
ACTOR_ REF_ BYTES - Maximum accepted UTF-8 bytes of an opaque actor reference.
- MAX_
CLOCK_ SKEW - Maximum accepted repository/local clock-skew bound.
- MAX_
CURSOR_ BYTES - Maximum size of one opaque cursor token.
- MAX_
OPERATION_ ID_ BYTES - Maximum accepted UTF-8 bytes of a caller-supplied idempotency key.
- MAX_
PAGE_ SIZE - Maximum rows one page may contain.
- MAX_
PARTITION_ CONTEXT_ BYTES - Maximum serialized byte length of one durable partition context.
- MAX_
PARTITION_ KEY_ BYTES - Maximum UTF-8 byte length of one durable partition key.
- MAX_
PURGE_ BATCH - Maximum executions one purge batch may target.
- MAX_
REASON_ CODE_ BYTES - Maximum accepted UTF-8 bytes of a closed-set reason code.
- MAX_
RESPONSE_ BYTES - Maximum estimated encoded size of one page.
- MAX_
STALE_ THRESHOLD - Maximum accepted stale-execution threshold.
- MIN_
CLOCK_ SKEW - Minimum accepted repository/local clock-skew bound.
- MIN_
PURGE_ AGE - Smallest accepted minimum age of a purge candidate.
- MIN_
STALE_ THRESHOLD - Minimum accepted stale-execution threshold.
- MIN_
UNRESOLVED_ AGE - Smallest age bound accepted by the unresolved-execution query.
Traits§
- Clock
- Supplies instants to repository and runtime operations.
- Explorer
Repository - A bounded read port one metadata adapter implements.
- IdGenerator
- Supplies facade-owned opaque identifiers.
- JobRepository
- Starts isolated repository units of work.
- Monotonic
Clock - Supplies monotonic readings for bounded recovery observations.
- Recovery
Repository - Adapter port for one bounded, server-time recovery observation.
- Repository
Unit OfWork - Transaction-scoped metadata operations required by the executable kernel.
Functions§
- aggregate_
step_ partitions - Aggregates a complete partition plan independently of input or completion order.
Type Aliases§
- BoxFuture
- An owned, dynamically dispatched future used by public asynchronous ports.