v0.2 reference implementation.
versioned schemas, an encrypted local vault, four-state policy, scoped bundles, append-only receipts, one files adapter & one local-agent consumer.
run one complete exchange.
import {
decideContextRequest,
issueScopedBundle,
writeReceipt,
} from './context-layer-reference.mjs';
const decision = decideContextRequest(request, policy);
const bundle = issueScopedBundle({
request,
decision,
claims,
issuer: 'did:example:alice',
});
const receipt = writeReceipt({
operation: 'bundle.issue',
request,
decision,
bundle,
});
the reference runtime accepts a request & policy, reduces the requested selectors, issues an expiring bundle, then writes a payload-minimized receipt.
use the reviewed artifacts.
reference implementationcontext-layer-reference.mjs ↓
context request schemacontext-request.schema.JSON ↓
policy decision schemapolicy-decision.schema.JSON ↓
scoped bundle schemascoped-context-bundle.schema.JSON ↓
memory proposal schemamemory-update-proposal.schema.JSON ↓
receipt schemareceipt.schema.JSON ↓
valid exchange fixturevalid-exchange.JSON ↓
valid decision fixturevalid-policy-decision.JSON ↓
invalid decision fixtureinvalid-policy-decision.JSON ↓
valid proposal fixturevalid-memory-update-proposal.JSON ↓
invalid proposal fixtureinvalid-memory-update-proposal.JSON ↓
invalid receipt fixtureinvalid-secret-receipt.JSON ↓