ProtectedPortable

Your World Is Protected

Your world is stored in a Postgres database. The canonical adapter separates core from storage, so swapping the database does not change canonical hashes. Core computes all canonical records; the adapter caches them.

Connection error

How data independence works

Canonical adapter principle: Postgres, Supabase, and Prisma do not generate canonical IDs. IDs are determined by sha256(canonicalize(hashInput)). Core computes canonical records; adapter stores them in Postgres. Even if the DB is wiped, complete recovery from the canonical ledger is possible.
Accord core (canonical identity)
placeCanonicalObject()
createCanonicalUsage()
executeWorldMutation()
exportCanonicalGraph()
importCanonicalGraph()
rebuildProjectionFromCanonicalGraph()
verifyCanonicalGraph()
Persistence adapter (serialization / cache)
Postgres(Supabase)
Prisma ORM
canonicalHash でインデックス
canonical レコードを生成しない
canonical フィールドを決定しない
Postgres
Main DB — stores canonical records
ADAPTER — not canonical identity
Supabase
Postgres host + connection pooler
ADAPTER — not canonical identity
Prisma ORM
Schema management + query layer
ADAPTER — not canonical identity
Recovery path: import → rebuild → verify → worldResult: same_world → DB fully replaceable

Postgres 接続状態

Checking connection state…

canonical 台帳エクスポート

Checking export state…
Download accord-ledger.json ↓World Control →

DB recovery steps

The DB is a cache layer. Even if wiped, complete recovery from the canonical ledger (accord-ledger.json) is possible.

1. export → download accord-ledger.json
2. POST /api/canonical/import
3. POST /api/canonical/rebuild
4. POST /api/canonical/verify → worldResult: same_world
5. All canonical hashes match — DB fully replaceable
Canonical Recovery
World ControlObject RegistryPaymentsExportVerifyRebuild