feat(provenance): Phase 2.1 COMPLETE v0.0.17 — Runtime API verify_provenance PROV-8 (8/8 sub-decisions)
🎉 Phase 2.1 PROVENANCE pallet COMPLETE end-to-end canonical 8/8 PROV. PROV-8 Runtime API verify_provenance wired canonical: - pallet sp_api::decl_runtime_apis! ProvenanceApi trait declaration - runtime impl_runtime_apis! impl ProvenanceApi<Block> for Runtime delegates a Provenance::attestation_of(hash) storage getter - 12 Runtime APIs canonical total (anterior 11 + ProvenanceApi nuevo) - Read-only RPC query canonical sin tx fee canonical - Node info subcommand updated canonical 12 APIs Phase 2.1 PROV sub-decisions COMPLETE canonical 8/8: - PROV-1 Schema separation Noesis/chain ✅ - PROV-2 StorageMap<AssetHash, AssetAttestation> ✅ - PROV-3 Dispatchable attest_asset full flow ✅ - PROV-4 Real Ed25519 verification ✅ - PROV-5 OIT Level >= 3 enforce ✅ - PROV-6 is_anchorable check ✅ - PROV-7 Events emission ✅ - PROV-8 Runtime API verify_provenance ✅ NUEVO v0.0.17 Verification end-to-end: - cargo check workspace verde 1.84s - 85+ tests pass workspace (47 types + 6 provenance + 16 runtime + 10 chain_spec + others) - cargo build release 5.88s clean - info subcommand muestra 8 pallets + 12 Runtime APIs - build-spec NO regression Slice 3 mock-WASM chain_spec builder Honest disclosure: PROV-1..8 complete canonical PERO real chain runtime canonical aún NO funciona end-to-end por WASM_BUILD_STD/serde leak (Slice 2c+2d findings). Pallet + Runtime API canonical structurally ready — cuando Slice 2e land, pallet correrá en real chain runtime canonical. Cross-pillar consumers desbloqueados canonical: Trinity + Codex + origindocs + Ethos + Atelier — todos pueden importar ProvenanceApi trait + plan integración. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
1 parent
d652a3d6e4
commit
f928935989
6 files changed
+142
-1
No files matched your search
@@ -496,6 +496,25 @@ impl_runtime_apis! {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ============================================================
|
||||
// PROV-8 canonical: Provenance Runtime API canonical (Phase 2.1 v0.0.17)
|
||||
// ============================================================
|
||||
//
|
||||
// Light clients + indexers + cross-pillar consumers (Trinity / Codex /
|
||||
// Codex origindocs / Ethos / Atelier) pueden query attestation status
|
||||
// via RPC sin full node access canonical.
|
||||
//
|
||||
// Pattern canonical: light client sends BLAKE3 hash → recibe Option<AssetAttestation>
|
||||
// (Some si attested previamente, None si nunca attested canonical).
|
||||
|
||||
impl origin_chain_provenance::ProvenanceApi<Block> for Runtime {
|
||||
fn verify_provenance(
|
||||
hash: origin_chain_types::AssetHash,
|
||||
) -> Option<origin_chain_types::AssetAttestation> {
|
||||
Provenance::attestation_of(hash)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// ============================================================
|
||||
|
||||
Reference in new issue
Block a user