pub struct PublishReceipt {
pub adapter: Adapter,
pub ecosystem: Ecosystem,
pub package: String,
pub version: String,
pub canonical_ref: String,
pub digest: Option<String>,
pub remote_url: Option<String>,
pub timestamp: u64,
}Expand description
A publish receipt — the durable fact captured the moment a target’s publish landed (ADR-0002 §1).
publish returns this rather than () precisely so the canonical
ref/digest/URL are recorded, not re-derived later: a publish that landed
under a drifted version must be detectable, and verify reconciles the
receipt’s Self::version against what the registry actually holds. The
receipt is journaled as a fact and is the input to VerifyOutcome
classification.
Fields§
§adapter: AdapterThe adapter identity that performed the publish.
ecosystem: EcosystemThe ecosystem whose registry the artifact was published to — the key
(with Self::package) a remote reconcile queries.
package: StringThe published package/crate/module name (resolved, never null on a
receipt — a publish that could not name its package could not publish).
version: StringThe version that was published — the value verify looks for remotely.
canonical_ref: StringThe canonical human/tooling reference for the published artifact, e.g.
crates.io/serde@1.0.0 or pkg:npm/@scope/name@2.3.0.
digest: Option<String>The artifact digest (content hash) when the ecosystem exposes one at
publish time; None when it does not (a later remote digest mismatch is
then undetectable and verify can only confirm presence).
remote_url: Option<String>The public URL of the published artifact, when the ecosystem has one.
timestamp: u64Publish time as whole seconds since the Unix epoch (from the injected
Clock) — a journaled fact, not wall-clock.
Trait Implementations§
Source§impl Clone for PublishReceipt
impl Clone for PublishReceipt
Source§fn clone(&self) -> PublishReceipt
fn clone(&self) -> PublishReceipt
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PublishReceipt
impl Debug for PublishReceipt
impl Eq for PublishReceipt
Source§impl PartialEq for PublishReceipt
impl PartialEq for PublishReceipt
Source§impl Serialize for PublishReceipt
impl Serialize for PublishReceipt
impl StructuralPartialEq for PublishReceipt
Auto Trait Implementations§
impl Freeze for PublishReceipt
impl RefUnwindSafe for PublishReceipt
impl Send for PublishReceipt
impl Sync for PublishReceipt
impl Unpin for PublishReceipt
impl UnsafeUnpin for PublishReceipt
impl UnwindSafe for PublishReceipt
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.