catalog

package
v0.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 13, 2026 License: MIT Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CryptoStorageArchiveFull            = "archive-full"
	CryptoNetworkProfilePublicChainPeer = "public-chain-peer"
	CryptoRewardDestinationTreasury     = "treasury"
	CryptoProofModeOperationalEvidence  = "operational-evidence"
	CryptoProofModeMiningShare          = "mining-share"
	CryptoProofModeValidatorDuty        = "validator-duty"
	CryptoProofModeProtocolReward       = "protocol-reward"
	CryptoRoleFullNode                  = "full-node"
	CryptoRoleMiner                     = "miner"
	CryptoRoleValidator                 = "validator"
	CryptoRoleProtocolReward            = "protocol-reward"
	CryptoRoleStatusSupported           = "supported"
	CryptoRoleStatusDeferred            = "deferred"
)
View Source
const (
	CryptoOperationalEvidenceProtocolVersion = "crypto-operational-evidence/v1"
	CryptoRPCPolicyPrivateOnly               = "private-only"
	CryptoMinerEvidenceModeDevnetBlock       = "devnet-block"
	CryptoMinerEvidenceModePoolShare         = "pool-share"
)
View Source
const (
	Version = core.Version

	NetworkModeNodeService = core.NetworkModeNodeService

	ExecutionSandboxedContainer = core.ExecutionSandboxedContainer
	ProofArtifactHash           = core.ProofArtifactHash

	NetworkModeDirect = core.NetworkModeDirect
	NetworkModeRelay  = core.NetworkModeRelay

	UpstreamClientConformanceShapeOnly  = core.UpstreamClientConformanceShapeOnly
	UpstreamClientConformanceRealClient = core.UpstreamClientConformanceRealClient

	SettlementTargetTreasuryWallet = core.SettlementTargetTreasuryWallet

	CryptoRewardCustodyTreasuryThenDistribute = core.CryptoRewardCustodyTreasuryThenDistribute
	CryptoRewardDistributionContributionShare = core.CryptoRewardDistributionContributionShare
	CryptoRewardParticipantAccountWallet      = core.CryptoRewardParticipantAccountWallet
)

Variables

View Source
var (
	CanonicalHash                 = core.CanonicalHash
	DefaultProviderRuntimeProfile = core.DefaultProviderRuntimeProfile
)

Functions

func CryptoProviderManifestDigest

func CryptoProviderManifestDigest() string

Types

type CryptoFullNodeOperationalEvidence added in v0.1.1

type CryptoFullNodeOperationalEvidence struct {
	UpstreamClientName        string `json:"upstream_client_name"`
	UpstreamClientVersion     string `json:"upstream_client_version"`
	RuntimeImageRef           string `json:"runtime_image_ref"`
	RuntimeImageDigest        string `json:"runtime_image_digest"`
	DurableDataRef            string `json:"durable_data_ref"`
	ServiceHealthReceiptRef   string `json:"service_health_receipt_ref"`
	PeerPolicyEvidenceRef     string `json:"peer_policy_evidence_ref"`
	RPCPolicy                 string `json:"rpc_policy"`
	ProtocolNativeRewardProof bool   `json:"protocol_native_reward_proof"`
}

type CryptoImageMetadata

type CryptoImageMetadata struct {
	UpstreamClientName       string   `json:"upstream_client_name"`
	DigestPinnedRequired     bool     `json:"digest_pinned_required"`
	OperatorSuppliedRequired bool     `json:"operator_supplied_required,omitempty"`
	RecommendedImageRef      string   `json:"recommended_image_ref,omitempty"`
	KnownImageRefs           []string `json:"known_image_refs,omitempty"`
}

type CryptoMinerOperationalEvidence added in v0.1.1

type CryptoMinerOperationalEvidence struct {
	Mode                      string `json:"mode"`
	PoolShareEvidenceRef      string `json:"pool_share_evidence_ref,omitempty"`
	DevnetBlockEvidenceRef    string `json:"devnet_block_evidence_ref,omitempty"`
	TreasuryRewardAddressRef  string `json:"treasury_reward_address_ref"`
	HashrateBudgetRef         string `json:"hashrate_budget_ref"`
	ResourceBudgetRef         string `json:"resource_budget_ref"`
	StaleShareAccountingRef   string `json:"stale_share_accounting_ref"`
	ProtocolNativeRewardProof bool   `json:"protocol_native_reward_proof"`
}

type CryptoNetworkMetadata

type CryptoNetworkMetadata struct {
	ProfileID                 string `json:"profile_id"`
	PeerPort                  int    `json:"peer_port"`
	AllowedPeerPorts          []int  `json:"allowed_peer_ports,omitempty"`
	RequiresIngress           bool   `json:"requires_ingress"`
	UsesDNSSeeds              bool   `json:"uses_dns_seeds"`
	RPCPrivateOnly            bool   `json:"rpc_private_only"`
	AuditRequired             bool   `json:"audit_required"`
	MaxOutboundPeers          int    `json:"max_outbound_peers"`
	MaxOutboundBytesPerSecond int64  `json:"max_outbound_bytes_per_second"`
	KillClosesPeers           bool   `json:"kill_closes_peers"`
}

type CryptoOperationalEvidenceContract added in v0.1.1

type CryptoOperationalEvidenceContract struct {
	Role                    string   `json:"role"`
	ProofMode               string   `json:"proof_mode"`
	ActivationStatus        string   `json:"activation_status"`
	SupportedModes          []string `json:"supported_modes,omitempty"`
	RequiredRefs            []string `json:"required_refs"`
	ProtocolRewardProof     bool     `json:"protocol_reward_proof"`
	RequiresCustodyContract bool     `json:"requires_custody_contract,omitempty"`
	RequiresSlashingRisk    bool     `json:"requires_slashing_risk,omitempty"`
	DeferredReason          string   `json:"deferred_reason,omitempty"`
}

func CryptoOperationalEvidenceContracts added in v0.1.1

func CryptoOperationalEvidenceContracts() []CryptoOperationalEvidenceContract

func (CryptoOperationalEvidenceContract) Validate added in v0.1.1

type CryptoOperationalEvidenceDocument added in v0.1.1

type CryptoOperationalEvidenceDocument struct {
	ProtocolVersion string                                   `json:"protocol_version"`
	PluginID        string                                   `json:"plugin_id"`
	Chain           string                                   `json:"chain"`
	Role            string                                   `json:"role"`
	ExternalRefs    map[string]string                        `json:"external_refs,omitempty"`
	FullNode        *CryptoFullNodeOperationalEvidence       `json:"full_node,omitempty"`
	Miner           *CryptoMinerOperationalEvidence          `json:"miner,omitempty"`
	Validator       *CryptoValidatorOperationalEvidence      `json:"validator,omitempty"`
	ProtocolReward  *CryptoProtocolRewardOperationalEvidence `json:"protocol_reward,omitempty"`
}

func (CryptoOperationalEvidenceDocument) Validate added in v0.1.1

type CryptoProfile

type CryptoProfile struct {
	Chain             string                `json:"chain"`
	ProductID         string                `json:"product_id"`
	DisplayName       string                `json:"display_name"`
	Purpose           string                `json:"purpose"`
	PoolID            string                `json:"pool_id"`
	ProviderID        string                `json:"provider_id"`
	ContractID        string                `json:"contract_id"`
	SchemaRef         string                `json:"schema_ref"`
	SchemaDigest      string                `json:"schema_digest"`
	ConfigRef         string                `json:"config_ref"`
	SettlementNetwork string                `json:"settlement_network"`
	WalletRef         string                `json:"wallet_ref"`
	MinDiskBytes      int64                 `json:"min_disk_bytes"`
	MinMemoryBytes    int64                 `json:"min_memory_bytes"`
	MinBandwidthMbps  int64                 `json:"min_bandwidth_mbps"`
	Role              CryptoRoleMetadata    `json:"role"`
	Storage           CryptoStorageMetadata `json:"storage"`
	Network           CryptoNetworkMetadata `json:"network"`
	Rewards           CryptoRewardMetadata  `json:"rewards"`
	Proof             CryptoProofMetadata   `json:"proof"`
	Image             CryptoImageMetadata   `json:"image"`
}

func CryptoNetworkProfile

func CryptoNetworkProfile(chain string) (CryptoProfile, bool)

func (CryptoProfile) NetworkProduct

func (p CryptoProfile) NetworkProduct(orgID string) NetworkProduct

func (CryptoProfile) ProviderContract

func (p CryptoProfile) ProviderContract() ProviderContract

type CryptoProofMetadata

type CryptoProofMetadata struct {
	Mode                      string   `json:"mode"`
	ShapeOnly                 bool     `json:"shape_only"`
	ProtocolNativeRewardProof bool     `json:"protocol_native_reward_proof"`
	EvidenceRefs              []string `json:"evidence_refs,omitempty"`
}

type CryptoProtocolRewardOperationalEvidence added in v0.1.1

type CryptoProtocolRewardOperationalEvidence struct {
	ChainRewardEventEvidenceRef string `json:"chain_reward_event_evidence_ref"`
	TreasuryCreditEvidenceRef   string `json:"treasury_credit_evidence_ref"`
	AttributionPolicyRef        string `json:"attribution_policy_ref"`
}

type CryptoProviderManifestDocument

type CryptoProviderManifestDocument struct {
	ProtocolVersion   string                              `json:"protocol_version"`
	PluginID          string                              `json:"plugin_id"`
	Version           string                              `json:"version"`
	RoleProfiles      []CryptoRoleProfile                 `json:"role_profiles"`
	EvidenceContracts []CryptoOperationalEvidenceContract `json:"evidence_contracts"`
	Profiles          []CryptoProfile                     `json:"profiles"`
}

func CryptoProviderManifest

func CryptoProviderManifest() CryptoProviderManifestDocument

func (CryptoProviderManifestDocument) Validate

type CryptoRewardMetadata

type CryptoRewardMetadata struct {
	ProtocolRewardDestination  string `json:"protocol_reward_destination"`
	TreasuryAccountID          string `json:"treasury_account_id,omitempty"`
	TreasuryWalletRef          string `json:"treasury_wallet_ref,omitempty"`
	ManagementFeeBasisPoints   int    `json:"management_fee_basis_points"`
	DirectWorkerPayout         bool   `json:"direct_worker_payout"`
	ProtocolRewardProofClaimed bool   `json:"protocol_reward_proof_claimed"`
}

type CryptoRewardRoutingPolicy

type CryptoRewardRoutingPolicy = core.CryptoRewardRoutingPolicy

type CryptoRoleMetadata

type CryptoRoleMetadata struct {
	ID                       string `json:"id"`
	ShapeOnly                bool   `json:"shape_only"`
	ProtocolRewardsAssumed   bool   `json:"protocol_rewards_assumed"`
	OperationalConformanceID string `json:"operational_conformance_id,omitempty"`
}

type CryptoRoleProfile

type CryptoRoleProfile struct {
	ID                           string   `json:"id"`
	Status                       string   `json:"status"`
	DisplayName                  string   `json:"display_name"`
	Description                  string   `json:"description"`
	ProofMode                    string   `json:"proof_mode"`
	TreasuryRequired             bool     `json:"treasury_required"`
	DirectWorkerPayout           bool     `json:"direct_worker_payout"`
	ProductCreationSupported     bool     `json:"product_creation_supported"`
	RequiresCustodyContract      bool     `json:"requires_custody_contract,omitempty"`
	RequiresSlashingRiskContract bool     `json:"requires_slashing_risk_contract,omitempty"`
	RequiredEvidence             []string `json:"required_evidence,omitempty"`
	DeferredReason               string   `json:"deferred_reason,omitempty"`
}

func CryptoRoleProfileByID

func CryptoRoleProfileByID(roleID string) (CryptoRoleProfile, bool)

func CryptoRoleProfiles

func CryptoRoleProfiles() []CryptoRoleProfile

type CryptoStorageMetadata

type CryptoStorageMetadata struct {
	Mode                         string `json:"mode"`
	MinDiskBytes                 int64  `json:"min_disk_bytes"`
	MinDiskDisplay               string `json:"min_disk_display"`
	RecommendedDiskBytes         int64  `json:"recommended_disk_bytes"`
	RecommendedDiskDisplay       string `json:"recommended_disk_display"`
	GrowthMarginBytes            int64  `json:"growth_margin_bytes"`
	GrowthMarginDisplay          string `json:"growth_margin_display"`
	DurableVolumeRequired        bool   `json:"durable_volume_required"`
	PreserveOnUpdate             bool   `json:"preserve_on_update"`
	PreserveOnUninstall          bool   `json:"preserve_on_uninstall"`
	PruningSupported             bool   `json:"pruning_supported"`
	SnapshotVerificationRequired bool   `json:"snapshot_verification_required"`
}

type CryptoValidatorOperationalEvidence added in v0.1.1

type CryptoValidatorOperationalEvidence struct {
	ValidatorDutyAttestationRef string `json:"validator_duty_attestation_ref"`
	CustodyContractRef          string `json:"custody_contract_ref"`
	SlashingRiskContractRef     string `json:"slashing_risk_contract_ref"`
	TreasuryCreditEvidenceRef   string `json:"treasury_credit_evidence_ref"`
}

type ExecutionSecurityTier

type ExecutionSecurityTier = core.ExecutionSecurityTier

type NetworkMode

type NetworkMode = core.NetworkMode

type NetworkOperatingMode

type NetworkOperatingMode = core.NetworkOperatingMode

type NetworkProduct

type NetworkProduct = core.NetworkProduct

type PlacementConstraints

type PlacementConstraints = core.PlacementConstraints

type PlacementRequirements

type PlacementRequirements = core.PlacementRequirements

type ProofTier

type ProofTier = core.ProofTier

type ProviderConfig

type ProviderConfig = core.ProviderConfig

type ProviderContract

type ProviderContract = core.ProviderContract

type ProviderRuntimeContract

type ProviderRuntimeContract = core.ProviderRuntimeContract

type ProviderRuntimeProfile

type ProviderRuntimeProfile = core.ProviderRuntimeProfile

type ProviderUpstreamClientRequirement

type ProviderUpstreamClientRequirement = core.ProviderUpstreamClientRequirement

func CryptoUpstreamClientRequirement

func CryptoUpstreamClientRequirement(chain string) (ProviderUpstreamClientRequirement, bool)

type ProviderUpstreamImagePolicy

type ProviderUpstreamImagePolicy = core.ProviderUpstreamImagePolicy

type SessionPolicy

type SessionPolicy = core.SessionPolicy

type SettlementTarget

type SettlementTarget = core.SettlementTarget

type StorageGuidance

type StorageGuidance = core.StorageGuidance

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL