pub enum InstallationStageEvidence {
Preflight {
source_hash: ApplicationSourceHash,
lock_hash: ApplicationLockHash,
manifest_hash: ApplicationManifestHash,
},
Contract {
version: ContractVersion,
bundle_hash: ContractBundleHash,
},
Migration {
migration_hash: Option<MigrationBundleHash>,
},
QueryModules(Vec<InstallationArtifact>),
ReactiveModules(Vec<InstallationArtifact>),
Roles(Vec<InstalledRoleEvidence>),
Reimport(InstalledReimportEvidence),
Credentials(Vec<InstalledCredentialEvidence>),
DriverProof(Vec<InstallationDriver>),
Seeds(Vec<InstalledSeedEvidence>),
Receipt(ApplicationInstallationReceiptHash),
}Expand description
Closed exact evidence for one idempotent campaign stage.
Variants§
Preflight
Exact local source/lock/manifest validation.
Fields
source_hash: ApplicationSourceHashAuthor source identity.
lock_hash: ApplicationLockHashCompiler-owned lock identity.
manifest_hash: ApplicationManifestHashCanonical manifest identity.
Contract
Exact active contract identity.
Migration
Exact migration completion, or explicit not-required evidence.
Fields
migration_hash: Option<MigrationBundleHash>Compiled migration identity when the plan requires one.
QueryModules(Vec<InstallationArtifact>)
Exact deployed named-query artifacts.
ReactiveModules(Vec<InstallationArtifact>)
Exact deployed reactive artifacts.
Roles(Vec<InstalledRoleEvidence>)
Exact reconciled symbolic roles.
Reimport(InstalledReimportEvidence)
Exact reimport terminal evidence, or explicit not-required evidence.
Credentials(Vec<InstalledCredentialEvidence>)
Exact installed credential identities without token bytes.
DriverProof(Vec<InstallationDriver>)
Exact public drivers that proved the installed identity.
Seeds(Vec<InstalledSeedEvidence>)
Complete per-batch seed counters with no item values.
Receipt(ApplicationInstallationReceiptHash)
Terminal receipt identity sealed by the campaign state machine.
Implementations§
Source§impl InstallationStageEvidence
impl InstallationStageEvidence
Sourcepub const fn stage(&self) -> InstallationStage
pub const fn stage(&self) -> InstallationStage
Stage represented by this evidence.
Sourcepub fn validate_for(
&self,
plan: &ApplicationInstallationPlan,
) -> Result<(), InstallationCampaignError>
pub fn validate_for( &self, plan: &ApplicationInstallationPlan, ) -> Result<(), InstallationCampaignError>
Validates that this evidence is the exact value declared by a plan.
This validates identity and bounded shape only. Remote contract, module, role, and capability evidence is still observed by the server; callers cannot use this method to authorize or assert those stages.