artifacts
Package artifacts defines canonical artifact types for cross-chain settlement per the v1.1 Unified Quantum-Safe PoS Ecosystem specification.
import "github.com/luxfi/node/vms/artifacts"Package artifacts defines canonical artifact types for cross-chain settlement per the v1.1 Unified Quantum-Safe PoS Ecosystem specification.
Each chain emits exactly one artifact type that X-Chain accepts:
- C → CReceipt
- D → DSettlementReceipt
- O → OracleAttestation
- R → VerifiedMessage
- I → CredentialProof
- T → Cert (OracleCert, RelayCert, DACert)
- Z → ZKProofCommitment
Types
Artifact
Artifact is the base interface for all cross-chain artifacts
CReceipt
CReceipt is the canonical artifact emitted by C-Chain for X-Chain settlement
func (r *CReceipt) ArtifactID() ids.IDfunc (r *CReceipt) Bytes() []bytefunc (r *CReceipt) DomainID() ids.IDfunc (r *CReceipt) Expiry() time.Timefunc (r *CReceipt) SchemaVersion() uint32func (r *CReceipt) SignatureSuite() SignatureSuiteCredentialProof
CredentialProof is the canonical artifact for identity credentials
func (c *CredentialProof) ArtifactID() ids.IDfunc (c *CredentialProof) Bytes() []bytefunc (c *CredentialProof) DomainID() ids.IDfunc (c *CredentialProof) Expiry() time.Timefunc (c *CredentialProof) SchemaVersion() uint32func (c *CredentialProof) SignatureSuite() SignatureSuiteDACert
DACert aggregates DA sampling evidence
func (c *DACert) ArtifactID() ids.IDfunc (c *DACert) Bytes() []bytefunc (c *DACert) DomainID() ids.IDfunc (c *DACert) Expiry() time.Timefunc (c *DACert) SchemaVersion() uint32func (c *DACert) SignatureSuite() SignatureSuiteDSettlementReceipt
DSettlementReceipt is the canonical artifact for D-Chain escrow settlement
func (r *DSettlementReceipt) ArtifactID() ids.IDfunc (r *DSettlementReceipt) Bytes() []bytefunc (r *DSettlementReceipt) DomainID() ids.IDfunc (r *DSettlementReceipt) Expiry() time.Timefunc (r *DSettlementReceipt) SchemaVersion() uint32func (r *DSettlementReceipt) SignatureSuite() SignatureSuiteEscrowRef
EscrowRef references an escrow UTXO on X-Chain
FeePayment
FeePayment represents a fee payment to be settled on X
MessageStatus
MessageStatus represents the delivery status
OracleAttestation
OracleAttestation is the canonical artifact for oracle data feeds
func (a *OracleAttestation) ArtifactID() ids.IDfunc (a *OracleAttestation) Bytes() []bytefunc (a *OracleAttestation) DomainID() ids.IDfunc (a *OracleAttestation) Expiry() time.Timefunc (a *OracleAttestation) SchemaVersion() uint32func (a *OracleAttestation) SignatureSuite() SignatureSuiteOracleCert
OracleCert attests that a quorum signed an oracle attestation
func (c *OracleCert) ArtifactID() ids.IDfunc (c *OracleCert) Bytes() []bytefunc (c *OracleCert) DomainID() ids.IDfunc (c *OracleCert) Expiry() time.Timefunc (c *OracleCert) SchemaVersion() uint32func (c *OracleCert) SignatureSuite() SignatureSuiteRelayCert
RelayCert attests that a quorum verified a message batch
func (c *RelayCert) ArtifactID() ids.IDfunc (c *RelayCert) Bytes() []bytefunc (c *RelayCert) DomainID() ids.IDfunc (c *RelayCert) Expiry() time.Timefunc (c *RelayCert) SchemaVersion() uint32func (c *RelayCert) SignatureSuite() SignatureSuiteSignatureSuite
SignatureSuite defines the cryptographic suite used
TradeNetting
TradeNetting represents netted trade outcomes
VerificationMode
VerificationMode defines how an artifact is verified
VerifiedMessage
VerifiedMessage is the canonical artifact for cross-chain messages
func (m *VerifiedMessage) ArtifactID() ids.IDfunc (m *VerifiedMessage) Bytes() []bytefunc (m *VerifiedMessage) DomainID() ids.IDfunc (m *VerifiedMessage) Expiry() time.Timefunc (m *VerifiedMessage) SchemaVersion() uint32func (m *VerifiedMessage) SignatureSuite() SignatureSuiteWithdrawal
Withdrawal represents an asset withdrawal from C to X
ZKProofCommitment
ZKProofCommitment is the canonical artifact for ZK proofs
func (z *ZKProofCommitment) ArtifactID() ids.IDfunc (z *ZKProofCommitment) Bytes() []bytefunc (z *ZKProofCommitment) DomainID() ids.IDfunc (z *ZKProofCommitment) Expiry() time.Timefunc (z *ZKProofCommitment) SchemaVersion() uint32func (z *ZKProofCommitment) SignatureSuite() SignatureSuite