package resources // OriginType qualifies where a resource instance comes from. type OriginType int const ( // OriginPeer: instance offered by a known network peer (default). OriginPeer OriginType = iota // OriginPublic: instance from a public registry (Docker Hub, HuggingFace, etc.). // No peer confirmation is needed; access is unrestricted. OriginPublic // OriginSelf: self-hosted instance with no third-party peer. OriginSelf ) // OriginMeta carries provenance information for a resource instance. type OriginMeta struct { Type OriginType `json:"origin_type" bson:"origin_type"` Ref string `json:"origin_ref,omitempty" bson:"origin_ref,omitempty"` // e.g. "docker.io/pytorch/pytorch:2.1" License string `json:"origin_license,omitempty" bson:"origin_license,omitempty"` // SPDX identifier or free-form Verified bool `json:"origin_verified" bson:"origin_verified"` // manually vetted by an OC admin } // IsPeerless MUST NOT be used for authorization decisions. // Use ResourceInstance.IsPeerless() instead, which derives the property // from structural invariants rather than this self-declared field. // // This method is kept only for display/logging purposes. func (o OriginMeta) DeclaredPeerless() bool { return o.Type != OriginPeer }