Building · Industrial infrastructure AI · Oracles · Blockchain for industry Remote · Global

Fulfillment Oracle

Evidence layer Draft v1.0 ORC tickets · Fail-closed
Ukiyo Network · Evidence layer

Fulfillment Oracle roadmap

Detailed plan: private prototype → Sepolia → multi-source industrial truth

Role: Answer “what is true” about a production order

1. Mission & boundaries

Never moves funds · Never sets policy

Fuses plant signals into a continuous Fulfillment Probability Score and publishes cryptographically attested evidence. Agency and SPOOL consume it; Oracle never advances capital.

HoldsProducesNever does
Connectors, scorers, attestation keys, feed healthAttested scoreBps, explanations, oracle stateMove funds, decide credit policy, hold capital

2. Current state

Private prototype · Local MVP stubs
  • Site brief + white paper published
  • Local MVP (MVP workspace): ERP fixture, weighted score, fail-closed, attest stub, tests
  • Missing: live EIP-712 on Sepolia, real ERP connector, vision/logistics
Pilot locked: Electronics · SUP-ACME-01 · PO-2026-0001 · Arbitrum Sepolia 421614

3. MVP scope (deep)

In scope

  • Single ERP/CSV fixture (units, due date, defects, supplier history)
  • Weighted FPS 0–10000 bps + explanation
  • EIP-712 Score: orderId, scoreBps, timestamp, dataRoot
  • Fail-closed: Normal / Degraded / Paused / Recovering
  • ScoreRegistry on Sepolia + off-chain API
  • Freshness window 900s

Out of scope

  • Vision · logistics multi-source · multi-plant · L1 root · full PyTorch model

Score weights

FeatureWeightSource
Deadline slack35%dueDate, remaining units
Production velocity30%unitsCompleted vs elapsed
Quality proxy15%defectRateBps
Supplier history15%on-time rate
Lead-time risk5%plannedLeadDays

Fail-closed

StateTriggerPublishEffect
Normal≤5 minYesFull score
Degraded5–15 minYes + uncertainty−500 bps haircut downstream
Paused>15 min / invalidNoAdvances blocked
RecoveringFresh after pauseYes + haircut−500 bps one cycle

4. Phases

Phase 0 · Foundation

Schema, fixture, score, fail-closed, local attest, tests. Exit: stale path demo green.

Phase 1 · Weeks 1–2 · Sepolia rail

  • Real EIP-712 + ECDSA
  • Deploy ScoreRegistry
  • Publisher: ingest→score→sign→publish
  • Read API for Agency/dashboard

Exit: Agency reads verified Sepolia scores.

Phase 2 · Months 3–4 · Real plant

  • One mid-market ERP connector
  • Plant-scoped credentials
  • Replay logs + silent-feed alerts
  • SLO: score age p95 < 5 min

Phase 3 · Months 5–8 · Multi-source

  • Vision throughput/stoppage
  • Logistics milestones
  • Fusion + agreement threshold
  • Calibration / drift monitors
  • Optional k-of-n signatures

Phase 4 · Months 9–12+ · Production network

  • L2 freshness + L1 Merkle root
  • Multi-node weighted publish
  • Vertical models · key rotation

5. Tickets

IDWorkAcceptance
ORC-1ERP schema + fixtureValidates; orderId stable
ORC-2Score engineHigh/mid/low tests
ORC-3EIP-712 attestRecovers oracle address
ORC-4Fail-closed FSMStale → no publish
ORC-5ScoreRegistry SepoliaPublish/read on-chain
ORC-6ERP production connectorPhase 2
ORC-7Replay + auditor exportPhase 2
ORC-8Vision adapterPhase 3
ORC-9Logistics adapterPhase 3
ORC-10Fusion thresholdPhase 3
ORC-11Calibration/driftPhase 3
ORC-12L1 root anchorPhase 4
ORC-13Multi-node medianPhase 4

6. Tech notes

Score(bytes32 orderId,uint16 scoreBps,uint64 timestamp,bytes32 dataRoot)

Services: ingest-worker · score-service · attestor · publisher · health-monitor

7. Risks

RiskMitigation
ERP poisoningMulti-source later; anomaly; fail-closed
Silent feedAge → Paused
Key compromiseDedicated key → HSM/MPC
OverconfidenceExplainability; Degraded uncertainty
Cross-chain replayEIP-712 chainId + verifyingContract

8. Next 2 weeks

  1. ORC-5 ScoreRegistry on Sepolia
  2. Real EIP-712 verify in publisher
  3. Oracle signer runbook