pub struct ContextPlanProjectionV1 {
pub schema_version: u32,
pub context_plan_id: ContextPlanId,
pub task_id: TaskId,
pub projection_digest: Option<Sha256Digest>,
pub budget_tokens: u64,
pub selections: Vec<ContextSelectionV1>,
pub provider_stats: BTreeMap<String, ContextProviderStatsV1>,
pub policy_decision_refs: Vec<String>,
pub evidence: Vec<EvidenceRefV1>,
pub extensions: ExtensionsV1,
}Expand description
Public projection of a context plan. The context kernel remains semantic owner.
Fields§
§schema_version: u32§context_plan_id: ContextPlanId§task_id: TaskId§projection_digest: Option<Sha256Digest>Optional SHA-256 digest of the canonical projection without this field. Old V1 readers may omit it; new projectors always populate it.
budget_tokens: u64§selections: Vec<ContextSelectionV1>§provider_stats: BTreeMap<String, ContextProviderStatsV1>§policy_decision_refs: Vec<String>§evidence: Vec<EvidenceRefV1>§extensions: ExtensionsV1Implementations§
Source§impl ContextPlanProjectionV1
impl ContextPlanProjectionV1
Sourcepub fn compute_projection_digest(&self) -> Result<Sha256Digest, ValidationError>
pub fn compute_projection_digest(&self) -> Result<Sha256Digest, ValidationError>
Compute the SHA-256 digest over canonical projection content.
The digest field is excluded from its own input, allowing consumers to verify a projection without a second unsigned envelope.
Sourcepub fn validate(&self) -> Result<(), ValidationError>
pub fn validate(&self) -> Result<(), ValidationError>
Validate projection bounds, joins, and deterministic uniqueness invariants.
Trait Implementations§
Source§impl Clone for ContextPlanProjectionV1
impl Clone for ContextPlanProjectionV1
Source§impl Debug for ContextPlanProjectionV1
impl Debug for ContextPlanProjectionV1
Source§impl<'de> Deserialize<'de> for ContextPlanProjectionV1
impl<'de> Deserialize<'de> for ContextPlanProjectionV1
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ContextPlanProjectionV1
Source§impl PartialEq for ContextPlanProjectionV1
impl PartialEq for ContextPlanProjectionV1
Source§impl Serialize for ContextPlanProjectionV1
impl Serialize for ContextPlanProjectionV1
impl StructuralPartialEq for ContextPlanProjectionV1
Auto Trait Implementations§
impl Forget for ContextPlanProjectionV1
impl Freeze for ContextPlanProjectionV1
impl Move for ContextPlanProjectionV1
impl RefUnwindSafe for ContextPlanProjectionV1
impl Send for ContextPlanProjectionV1
impl Sync for ContextPlanProjectionV1
impl Unpin for ContextPlanProjectionV1
impl UnsafeUnpin for ContextPlanProjectionV1
impl UnwindSafe for ContextPlanProjectionV1
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more