Decision

ADR 0011: The reference kernel is storage-neutral

Prove the complete action loop in memory before selecting Har or another persistence engine.

acceptedfilesystempre.page.v1

Context

The Step 1 contracts need executable proof, but choosing a database now would let persistence details define semantics before the protocol has survived one complete loop.

Decision

main includes a deliberately small in-memory reference kernel that:

validates a request
  -> claims idempotency
  -> resolves trusted authority
  -> executes one bounded operation
  -> records ordered events and evidence
  -> optionally invokes an explicit objective evaluator
  -> emits a result and immutable receipt
  -> reconstructs the request after executor replacement

The kernel depends on interfaces and protocol records, not Instant, Har, SQL, Vercel, or a filesystem. It is a conformance reference and Step 2 integration target, not a production runtime claim.

The reference bounded-read executor projects only resolved fields. Replaying a completed request returns the original result. Encountering an admitted request without a final receipt returns an explicit recovery state instead of rerunning it.

Consequences

  • Step 1 contracts are executable rather than aspirational;
  • storage selection remains reversible;
  • HARnest can implement the same boundary without importing an accidental database ontology;
  • the next milestone can test one real durable task against this reference behavior;
  • main stays a compact constitutional/reference repository rather than becoming the production HARnest implementation.
Source decisions/0011-reference-protocol-kernel.md · digest 5c3bd15831a5 · JSON · Markdown