Public declaration syntax from forge-rs/harness-runtime/src/planes/identity.rs Original source SHA-256: 4aa7c40c226dd1df517563393552d5b90263d3d9a207c27e47edcd65663802f6 Function bodies and constant values are omitted. This is not the complete implementation. Source line 13 #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] pub struct LineageVerificationRequest { /// The harness agent DID (`[identity].did`). pub did: String, /// The lineage proof reference (`[identity].lineage_proof`). pub lineage_proof: String, /// The accountable owner the chain must terminate at /// (`[harness].owner`). pub expected_owner: String, /// Derivation depth of this run (0 for a root harness). pub depth: u32 } Source line 27 #[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)] pub struct LineageVerification { /// True when the chain resolves and terminates at the expected human /// root. pub verified: bool, /// The human root the chain terminates at, when resolved. pub human_root: Option, /// Durable evidence reference for the verification (§4.4 step 3: an /// admission allow without a durable `evidenceRef` must not exist). pub evidence_ref: Option } Source line 40 #[async_trait] pub trait IdentityPlane: Plane { /// Verify that `request.did` chains to `request.expected_owner`'s /// human root. Provider unavailability is a typed /// [`PlaneError::Unavailable`], never a silent pass (§4.6). async fn verify_lineage( &self, request: LineageVerificationRequest, ) -> Result; }