# Routed buyer continuity 001 — preregistration

Frozen before live calls and comparative results. R2, five working days from
implementation start on 2026-09-04. Base:
afa41b189f2873cc85c7c4ddfe59b414c605ab26.

## Question and limits

Can a replacement buyer recover bounded decisions about purchased schedules
from retained evidence and operator-installed requirements without contacting
the supplier again? Live inference uses synthetic public tasks. Neither a
decentralized marketplace nor independent Bulla interoperability is tested.
The published package supplies records, not this paper's scheduler, journal,
recovery controller, or simulator. No payment eligibility or settlement occurs.

All tracked additions stay in this paper directory. No push, publication,
website change, participant exposure, product/protocol change, witness, bond,
or failed-waist import. Maximum API consumption is USD 5 with one dedicated,
non-resetting inference key. Maximum 24 completion POSTs, sequentially, with
no retry. Read-only public catalog and sanitized budget checks are permitted.

## Workload and allocation

Twelve deterministically generated feasible problems, eight jobs and three
machines each, integer durations/releases/deadlines and horizon 32. Machine
eligibility, directed acyclic precedence, completeness and non-overlap are
required. Any feasible schedule is acceptable; optimality is not tested.
A fixture witness stays out of the request and evaluator. Returned JSON must
contain exactly assignments with job, machine, start; no code, commentary,
extra members, or model-supplied judgment is accepted. A deterministic local
simulator consumes accepted schedules; no physical jobs or training occur.

Each problem is bought once through deepinfra/turbo and once through
akashml/fp8, using meta-llama/llama-3.3-70b-instruct. Alternate the first route
on successive problems. Each pair has distinct purchase IDs. Freeze all 24
requests, exact requirements and identities before calls. Do not substitute
providers/models if the selected catalog endpoints fail the preflight.

Use temperature zero, non-streaming, max_tokens 2048, JSON-object mode,
provider.only containing exactly the selected endpoint, disabled fallbacks,
required parameter support, data_collection deny, router metadata enabled,
and no requested transformations/tools/plugins. Set a maximum advertised
prompt price of USD 1 and completion price of USD 2 per million tokens.
Requests are capped at 16 KiB; responses at 1 MiB; HTTP timeout is 45 seconds.
Prompt budgets and the provider-side key cap are safeguards, not a guarantee
against erroneous service billing. Report service cost as service-reported.

## Admission and dispositions

The buyer receives externally installed purchase requirements and observer
public key, exact request/response sidecars, a capture manifest and one signed
observation. It never receives a witness solution, generator seed, expected
answer or authority derived from a record. Receipt signers are our local
observer, not OpenRouter or an upstream provider.

Authenticated exact bindings plus a complete HTTP-200 response, one expected
route/model and a single direct reported attempt with no transformations,
one JSON choice and a feasible schedule yield USABLE. A complete, bound but
malformed/infeasible answer yields REJECTED. Missing evidence, invalid
authentication/bindings, API errors, missing/contradictory route metadata or
reported fallback/transformation yield UNRESOLVED. Invalid evidence is not
proof that the provider cheated. The label concerns the supplied evidence.

The record's documentary event UUID and claimed time do not affect admission,
scheduling, dispatch identity or consumption. Raw provider-response changes
remain distinct observations; two similar answers are not treated as one
purchase. Returned provider/model identifiers are service statements, not
cryptographic execution evidence. Missing schedules cannot be reconstructed
from their commitments. No post-result requirement adjustment or JSON repair.

## Persistence and recovery

Durable dispatch intent precedes each POST. Raw bytes are sealed before
assessment. An unsealed intent blocks the live batch and remains unresolved;
it cannot be retried even when a request may not have left the host. After 12
sealed purchases the capture process exits; a distinct process resumes from
durable state, requiring the same dedicated API key again through a hidden
prompt. No key is persisted or passed to children. Phase/session identities
and source hashes are recorded. Account responses and headers are not saved.

The research-local SQLite journal commits one immutable assessment and an
optional consumption instruction. A simulator enforces uniqueness of an
addressed dispatch key derived from purchase and requirements. Exact replay
returns the first assessment bytes. A different observation at an assessed
purchase causes no additional consumption. The simulator accepts only a
committed authorized instruction, never arbitrary provider fields.

Additional crash boundaries are tested offline with sealed observations:
before dispatch; after intent; after capture; after assessment; before and
after simulator consumption. These are controlled injections, not observed
upstream outages. Offline replay uses a network-denied, credential-free child
process and retained public observer keys only. Receipt authentication is not
a proof of journal completeness or protection against a malicious host.

## Control and measurements

Ordinary Ed25519-signed JSON and ActionReceipt v0.4 encode exactly the same
observation and assessment facts under the same keys. Both use the published
PyNaCl dependency. Format adapters validate/authenticate; one common evaluator
and consumer apply all substantive rules. Replay each with and without raw
response payloads. Format parity is mandatory, not proof of a Bulla advantage.

Report per route usable/rejected/unresolved counts; simulator consumptions and
duplicates; crash outcomes; attempted POSTs; service-reported tokens/cost and
unresolved charges; content and format bytes; PyNaCl signature-verification
attempts and Python SHA-256 input bytes. Cold evaluation per representation
and purchase, no cross-purchase caching. Native Ed25519 internal hashes are
excluded. Preserve live request/check latency as descriptive observations,
not provider rankings, economics, or a primary comparative endpoint.

Two derivations from the same sealed observations must reproduce the primary
report byte-for-byte. Separate recorded live latency from rerun timings.
The buyer/evaluator source hashes must be unchanged across routes and restart.
No integration-effort or independence credit is assigned to Bulla for
OpenRouter's common API, our own apparatus, or self-operated signing keys.

## Gates and terminal result

One hostile R2 reviewer examines the exact apparatus before paid calls and
final claims afterwards. Only material findings receive an affected recheck.
Test all scheduler constraints, key/commitment/identity attacks, absent and
hostile inputs, duplicate/conflicting records, concurrent consumption,
documentary noninterference, privacy and filesystem boundaries, and actual
network-denied replay. Run mapped repository paper checks locally. Ubuntu CI
and cross-platform portability remain unrun; do not describe them as passed.

ROUTED_BUYER_CONTINUITY_DEMONSTRATED requires the full fixed batch, at least
one adequately documented usable delivery per route, unchanged evaluator,
live two-process continuation, zero duplicate consumption, signed-format
parity, all attack tests, deterministic derivation and review closure.
LIVE_DELIVERIES_NOT_USABLE is a completed valid batch lacking a usable result
on one or both routes. CONTINUITY_APPARATUS_INVALID applies to an unsupported
acceptance, duplicate consumption, authority leak or invalid comparison.
EXPERIMENT_INCOMPLETE covers missing credentials, partial/uncertain dispatch,
unavailable preflight, missing evidence, or timebox exhaustion. Pending setup
is not a terminal disposition and does not spend the live request allowance.

All outcomes preserve failed evidence. Do not repair Bulla, change tasks to
obtain success, or initiate an additional batch. Produce local positioning
proposals only, describing observations and injected failures separately.
