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

Roadmaps

06
Combined system Draft v1.0 All layers · In progress
Ukiyo Network · Internal planning

Project roadmap

All-system plan plus detailed roadmaps for Oracle, Agency, and SPOOL

Document: Detailed product roadmap · Draft v1.0 · In progress
Scope: Company vision → MVP pilot → scale (not production yet)
Location: /roadmaps/
Related MVP workspace: MVP workspace

All / company roadmap System

North star

Make industrial production legible, intelligent, and liquid. One system in three layers: Oracle answers what is true, Agency answers what may be done, SPOOL answers what credit and settlement follows.

Plant / ERP → Oracle → Agency → SPOOL → Credit & settlement

Phased company timeline

Phase 0 — Now

Company site, white papers, vision docs live. Local MVP vertical demo exists at MVP workspace (ERP fixture → score → policy → simulated advance + fail-closed). Oracle private prototype; Agency & SPOOL in active development.

Phase 1 — Pilot-ready MVP · Weeks 1–8

One Electronics PO on Arbitrum Sepolia. Deploy ScoreRegistry, Order NFT, IndustrySpool, PolicyEngine; wire agency loop; operator dashboard + audit export. Exit: stale feed blocks advance; allowlist enforced; human multi-sig for over-cap.

Phase 2 — First real pilot · Months 3–4

One mid-market supplier, one buyer PO. Real ERP connector (not fixture only). Ops runbook, escalation drills, pilot metrics. Capital remains testnet or tightly capped.

Phase 3 — Depth · Months 5–8

Stronger evidence + safer agency. Vision/logistics multi-source fusion, model calibration, richer policy bounds, fork simulation, optional L1 score-root anchoring.

Phase 4 — Credit markets · Months 9–12+

Mainnet Arbitrum with limited liquidity. More industry spools, LP/buyer surfaces, Stylus where needed, audits, governance, observability SLOs.

Company-wide exit criteria (pilot-ready)

  • Score updates within minutes of ERP change
  • Stale / paused oracle blocks advance (fail-closed)
  • Agent never calls a non-allowlisted selector
  • Demo path: score up → advance; score crash → pause; human approves escalations
  • Audit trail: attestation + decision + tx hash
Do not do early: multi-plant before one PO works · unbounded agent keys · mainnet liquidity before fail-closed drills · turning the marketing site into the protocol runtime.

Fulfillment Oracle Evidence layer

Status · Private prototype → Sepolia publish

Turns plant reality into a cryptographically attested Fulfillment Probability Score. MVP uses ERP-only features; full vision adds computer vision and logistics.

Mission by phase

PhaseOracle deliverableAcceptance
0 Now ERP fixture schema, weighted score engine, fail-closed states, HMAC attest stub, local ingest Local demo publishes Normal scores; stale → Paused
1 Weeks 1–2 Real EIP-712 attest; ScoreRegistry on Arbitrum Sepolia; publish/read API On-chain latest score per orderId; consumers verify signer
2 Months 3–4 Live ERP connector for one pilot plant; freshness SLO; operator alerts PO score updates within minutes of real work-order change
3 Months 5–8 Vision + logistics fusion; calibration / drift monitors; threshold signing option Degraded mode when one source fails; no false confidence publish
4 Months 9–12+ Two-tier publish (L2 freshness + L1 Merkle root); multi-node consensus Advance-grade reads can require parent-chain safe finality

Detailed MVP tickets (Oracle)

IDWorkDone when
ORC-1ERP JSON schema + fixture PO-2026-0001Schema validates; orderId stable
ORC-2Score engine → scoreBps + explanationHigh/mid/low unit tests
ORC-3EIP-712 attest + verifyRecovers authorized oracle address
ORC-4Fail-closed: Normal / Degraded / Paused / RecoveringStale feed does not publish
ORC-5ScoreRegistry + Sepolia deployPublish & read on chain

MVP score features (ERP-only)

  • Deadline slack (35%)
  • Production velocity (30%)
  • Quality proxy / defect rate (15%)
  • Supplier on-time history (15%)
  • Lead-time risk (5%)

Fail-closed rules

StateTriggerBehavior
NormalSnapshot ≤ 5 minPublish attested score
Degraded5–15 min agePublish with uncertainty; agency haircut
Paused> 15 min or missing fieldsStop publishing; advances blocked
RecoveringFeed restored after pause−500 bps haircut one cycle

Later Oracle backlog

  • MES / mid-market ERP adapters beyond fixture
  • Line vision throughput & stoppage detectors
  • Carrier / dock logistics milestones
  • PyTorch calibrated model replacing weighted MVP scorer
  • HSM/MPC oracle keys; k-of-n threshold attestation

Agency for Smart Contracts Governance layer

Status · Building → Sepolia agent loop

Policy-bounded DeFi agents that observe oracle scores, simulate calls, and execute only allowlisted actions. Keys and limits stay off-model; high-impact moves escalate to human multi-sig.

Mission by phase

PhaseAgency deliverableAcceptance
0 Now Band mapper, allowlist table, in-process simulate, escalate queue stubs Local vertical demo: mint → escalate over-cap → pause on stale
1 Weeks 5–6 On-chain PolicyEngine; runtime observe→decide→simulate→act on Sepolia Unknown selector rejected; over-cap requires 2-of-2
2 Months 3–4 Pilot ops console for approvals; runbooks; notification codes Operators can approve/reject with audit
3 Months 5–8 Anvil/Foundry fork simulation; argument-level bounds; Timeboost optional for pause/reprice State-diff rejects unexpected balance moves
4 Months 9–12+ Mainnet policy governance (timelock); signer HSM/MPC; novelty escalation Agent compromise cannot bypass allowlist or escalation

Policy bands (MVP)

BandConditionActionEscalate?
HighscoreBps ≥ 8000, fresh Normaladvance (within caps)If amount > $25k auto-cap
Mid5500–7999 or Degradedreprice → notifyNo
LowscoreBps < 5500pause + notifyYes (pause lift)
StalePaused / missing scorepauseYes

Detailed MVP tickets (Agency)

IDWorkDone when
AGY-1PolicyEngine allowlist + value capsUnknown selector rejected
AGY-2Band mapperMatches band table
AGY-3Simulation gateBad diff → simulate_reject audit
AGY-4Runtime on SepoliaHigh-score advance E2E
AGY-5Escalation 2-of-2Over-cap needs human

Allowlisted actions only

  • mintOrder · advance · reprice · pause · notify
  • Empty allowlist authorizes nobody
  • Model never receives signing keys, RPC secrets, or mutable policy text

Later Agency backlog

  • Selector + argument decoding bounds for every value-moving call
  • Express-lane (Timeboost) only for risk-reducing pause/reprice
  • Novelty detection: first-time selectors always escalate
  • Off-chain confidential policy with on-chain proof (optional)

SPOOL Protocol Credit layer

Status · Building → Sepolia Electronics spool

Production-verified credit: Verified Order NFTs, industry spools, score-linked advances. MVP is one Electronics spool on Arbitrum Sepolia with MockUSDC — not mainnet capital.

Mission by phase

PhaseSPOOL deliverableAcceptance
0 Now In-memory spool model (mint/advance/reprice/pause/notify) for local demo Vertical-slice tests green
1 Weeks 3–4 VerifiedOrderNFT, IndustrySpool, MockUSDC on Sepolia; maxAdvance from score Lower score → lower cap; paused score → revert
2 Months 3–4 Pilot funding of spool; supplier payout path; outstanding tracking One real PO advanced under policy
3 Months 5–8 Repayment waterfall; continuous reprice; buyer notify surfaces Score crash pauses new advances without manual scramble
4 Months 9–12+ Mainnet limited liquidity; Auto/Pharma spools; LP participation; Stylus path Audited contracts; utilization & risk dashboards

Detailed MVP tickets (SPOOL)

IDWorkDone when
SPL-1VerifiedOrderNFT mint-onceDuplicate mint reverts
SPL-2IndustrySpool Electronics actionsSelectors match allowlist
SPL-3MockUSDC + fund spoolAdvance transfers to supplier
SPL-4maxAdvance = f(notional, ratio, score)Paused/stale → 0
SPL-5Foundry tests happy + fail-closedCI green

MVP advance formula

maxAdvance = notional × advanceRatioBps × scoreBps / 10000 / 10000

Default advanceRatioBps = 4000 (40% of notional at perfect score). Freshness window 900s.

Later SPOOL backlog

  • Industry verticals beyond Electronics (Auto, Pharma)
  • Buyer stake / notification for mid-band risk
  • Stablecoin settlement asset upgrade from MockUSDC
  • Public LP tranches with oracle-gated exposure
  • Stylus compute for heavy credit logic; Ethereum L1 finality anchors

Dependencies & shared milestones Integration

Integration order

Layers are a directed chain. Do not advance SPOOL liquidity before Oracle fail-closed and Agency allowlist are proven.

Build order (MVP)

  1. Oracle ORC-1…4 — local truth + fail-closed (mostly done in MVP workspace)
  2. Oracle ORC-5 — ScoreRegistry on Sepolia
  3. SPOOL SPL-1…5 — NFT + spool + MockUSDC wired to registry
  4. Agency AGY-1…5 — policy + runtime driving spool
  5. Dashboard DASH-1…5 — operator surface + pilot drill

Shared dashboard tickets

IDWorkDone when
DASH-1PO list + detailScore, state, last decision visible
DASH-2HTTP APIOrders / audit / demo controls
DASH-3Audit export JSONAttest + decision + txHash
DASH-4Fail-closed drill scriptSupplier walkthrough reproducible
DASH-5Site contact → pilot runbook/contact/?topic=oracle-pilot linked

Cross-layer dependency matrix

From → ToInterfaceIf broken
Oracle → AgencyEIP-712 attested score + stateAgency must treat as Paused / no score
Agency → SPOOLAllowlisted calldata after simulateNo capital movement
SPOOL → OracleReads registry for maxAdvanceAdvance reverts when stale/paused
Human → Agency/SPOOL2-of-2 escalationOver-cap and pause-lift blocked

Suggested next 2 weeks

  1. Finish ORC-5 — ScoreRegistry on Sepolia
  2. Land SPL-1–3 — NFT + spool + MockUSDC
  3. Keep marketing site as pilot intake only

Team posture

  • Core team: 2 engineers, remote-first
  • Stack: Rust · Solidity · Python · TypeScript
  • Execution: Arbitrum Sepolia → Arbitrum One; settlement root Ethereum L1 (later)
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
Governance layer Draft v1.0 AGY tickets · Allowlist
Ukiyo Network · Governance layer

Agency for smart contracts roadmap

Observe → decide → simulate → act / escalate

Role: Answer “what may be done”

1. Mission & boundaries

Never invents evidence · Never holds capital

Policy-bounded agents between oracle feeds and on-chain markets. Agents propose; contracts enforce; keys stay off-model.

HoldsProducesNever does
Policy engine, allowlists, escalation, runtimeApproved / rejected / escalated decisions + auditProduce scores, custody LP funds, free-write txs
Observe → Decide → Simulate → Act / Escalate

2. Current state

Building · Local policy stubs
  • White paper + site brief live
  • Local MVP: bands, allowlist, simulate, escalate, audit
  • Missing: on-chain PolicyEngine, fork sim, HSM signer

3. MVP scope (deep)

  • Bands: high ≥8000 advance · mid 5500–7999 reprice/notify · low <5500 pause · stale → pause
  • Degraded/Recovering haircut −500 bps before banding
  • Allowlist only: mint, advance, reprice, pause, notify
  • Escalate if amount > $25k auto-cap or pause-lift / stale policy
  • 2-of-2 human approve/reject
Empty allowlist authorizes nobody.
ActionTargetBounds
mintVerifiedOrderNFTonce per orderId
advanceIndustrySpoolamount ≤ maxAdvance
repriceIndustrySpoolspread 50–2000 bps
pause / notifyIndustrySpoolnotify codes enum

4. Runtime loop

  1. Observe registry score/state + spool state
  2. Decide band → typed allowlisted proposal
  3. Simulate expected state diff
  4. Act via separate signer — or escalate
  5. Audit every step
ActionExpected diffReject if
pausepaused; balances samebalance change
repricespread in boundsout of range
notifyevent onlystorage write
advanceoutstanding+=amt; supplierwrong amt/recipient
mintNFT existsduplicate

5. Phases

Phase 0 · Local brain

Band mapper + simulate + escalate in MVP workspace demo.

Phase 1 · Weeks 5–6 · Sepolia loop

  • Deploy PolicyEngine
  • Typed calldata builders
  • Signer separated from decision
  • 2-of-2 queue

Exit: E2E high-score advance; unknown selector rejected.

Phase 2 · Months 3–4 · Pilot ops

  • Escalation console
  • Notify channels
  • Runbooks + metrics

Phase 3 · Months 5–8 · Hardening

  • Fork simulation
  • Argument-level bounds
  • Novelty escalation
  • Timeboost only for pause/reprice
  • Timelocked policy

Phase 4 · Months 9–12+ · Mainnet agency

  • HSM/MPC · m-of-n
  • Governed mainnet allowlists
  • Optional confidential policy proofs

6. Tickets

IDWorkWhen
AGY-1PolicyEngine allowlist + capsMVP
AGY-2Band mapperMVP
AGY-3Simulate gateMVP
AGY-4Sepolia runtimeMVP
AGY-5Escalation 2-of-2MVP
AGY-6Ops consolePhase 2
AGY-7Notify adaptersPhase 2
AGY-8Fork simulationPhase 3
AGY-9Arg-level decodersPhase 3
AGY-10Novelty escalationPhase 3
AGY-11Timelock governancePhase 3–4
AGY-12HSM/MPC signerPhase 4

7. Security

  • Model never receives keys / RPC / mutable policy
  • Signer accepts only policy-approved calldata
  • Stale oracle → pause band
  • Show rationale + sim diff on escalations

8. Next (after Oracle/SPOOL deployables)

  1. Freeze allowlist sighashes vs SPOOL
  2. AGY-1 deploy script
  3. Split decision worker from signer stub
Credit layer Draft v1.0 SPL tickets · Sepolia → mainnet
Ukiyo Network · Credit & settlement

SPOOL Protocol roadmap

Order NFTs · industry spools · score-linked advances

Role: Answer “what credit follows”

1. Mission & boundaries

Never produces evidence · Never owns policy

Production-verified credit: mint Verified Order NFTs, fund industry spools, advance stablecoins when Agency-approved calls pass oracle-gated caps.

HoldsProducesNever does
NFTs, spool liquidity, outstanding, spreadsCredit positions, pauses, reprices, settlementsInvent scores; rewrite allowlists
Mint NFT → Score-gated advance → Reprice / pause → Repay

2. Current state

Building · Local spool model
  • Site + white paper live
  • Local MVP in-memory mint/advance/reprice/pause/notify
  • Solidity stubs: NFT, IndustrySpool, MockUSDC
  • Missing: Sepolia deploy, Foundry CI, mainnet capital
Capital posture: Sepolia + MockUSDC only until fail-closed drills + audits clear.

3. MVP scope (deep)

  • One NFT per PO · Electronics spool only
  • Actions: mint, advance, reprice, pause, notify
  • maxAdvance from attested score · reject if Paused or age > 900s
  • MockUSDC to supplier on advance
ParameterMVP value
VerticalElectronics
PO / notionalPO-2026-0001 / $100,000
advanceRatioBps4000 (40% at perfect score)
Freshness900 seconds
Spread50–2000 bps
Chain / assetSepolia 421614 / MockUSDC

4. Credit mechanics

maxAdvance = notional × advanceRatioBps × scoreBps / 10000 / 10000

Example: 100000 × 4000 × 9675 → ≈ $38,700 (may escalate above $25k auto-cap).

StateEntryNext
UnmintedPO registeredmint → Active
ActiveNFT mintedadvance, reprice, pause, notify
Advancedoutstanding > 0reprice, pause, notify, repay later
Pausedpause()advance blocked

Fail-closed credit

  • Oracle Paused / stale → maxAdvance 0
  • Spool paused / unminted → advance reverts
  • Duplicate mint → revert

5. Phases

Phase 0 · Spec + local

In-memory model + stubs + vertical tests.

Phase 1 · Weeks 3–4 · Sepolia

  • Deploy NFT, spool, MockUSDC
  • Wire score-based maxAdvance
  • Foundry happy + fail-closed

Phase 2 · Months 3–4 · Pilot credit

  • Real supplier + notional
  • Capped liquidity
  • Utilization dashboards

Phase 3 · Months 5–8 · Continuous ops

  • Repayment waterfall
  • Continuous reprice
  • Buyer notify · richer lifecycle

Phase 4 · Months 9–12+ · Markets

  • Mainnet limited LP
  • Auto / Pharma spools
  • Audit · Stylus path

6. Tickets

IDWorkWhen
SPL-1VerifiedOrderNFT mint-onceMVP
SPL-2IndustrySpool ElectronicsMVP
SPL-3MockUSDC + fundMVP
SPL-4Score-linked maxAdvanceMVP
SPL-5Foundry suiteMVP
SPL-6Liquidity runbookPhase 2
SPL-7Utilization dashboardsPhase 2
SPL-8Repayment waterfallPhase 3
SPL-9Order lifecyclePhase 3
SPL-10/11Auto / Pharma spoolsPhase 4
SPL-12LP tranchesPhase 4
SPL-13Mainnet + auditPhase 4
SPL-14Stylus computePhase 4

7. Market expansion

VerticalWhen
ElectronicsMVP → Phase 2
AutoPhase 4
PharmaPhase 4

Capital path: MockUSDC Sepolia → capped pilot → limited mainnet LP → open markets.

8. Next 2 weeks (after Oracle registry)

  1. SPL-1–3 Sepolia deploy scripts
  2. SPL-4 maxAdvance vs live registry
  3. SPL-5 Foundry stale/pause/duplicate tests

Build the next industrial market with us

Operators, enterprises, and partners exploring AI, oracles, and blockchain for industry — we're open to serious conversations.