Documentation
¶
Overview ¶
Package artifact defines the runtime-safe schema for multimodal artifacts.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Artifact ¶
type Artifact struct {
ID string `json:"id"`
Kind ArtifactKind `json:"kind"`
Ref ArtifactRef `json:"ref"`
Meta ArtifactMeta `json:"meta,omitempty"`
}
Artifact is the first-class runtime representation of a multimodal object.
type ArtifactKind ¶
type ArtifactKind string
ArtifactKind classifies the logical type of an artifact.
const ( ArtifactKindImage ArtifactKind = "image" ArtifactKindDocument ArtifactKind = "document" ArtifactKindAudio ArtifactKind = "audio" ArtifactKindVideo ArtifactKind = "video" ArtifactKindText ArtifactKind = "text" ArtifactKindJSON ArtifactKind = "json" ArtifactKindBinary ArtifactKind = "binary" )
type ArtifactMeta ¶
type ArtifactMeta struct {
MediaType string `json:"media_type,omitempty"`
SizeBytes int64 `json:"size_bytes,omitempty"`
Checksum string `json:"checksum,omitempty"`
Origin string `json:"origin,omitempty"`
}
ArtifactMeta stores transport-safe metadata about an artifact.
type ArtifactRef ¶
type ArtifactRef struct {
Source ArtifactSource `json:"source"`
Path string `json:"path,omitempty"`
URL string `json:"url,omitempty"`
ArtifactID string `json:"artifact_id,omitempty"`
Kind ArtifactKind `json:"kind,omitempty"`
}
ArtifactRef points at the physical or logical location of an artifact.
func NewGeneratedRef ¶
func NewGeneratedRef(id string, kind ArtifactKind) ArtifactRef
NewGeneratedRef references an artifact produced during runtime execution.
func NewLocalFileRef ¶
func NewLocalFileRef(path string, kind ArtifactKind) ArtifactRef
NewLocalFileRef references an artifact stored on the local filesystem.
func NewURLRef ¶
func NewURLRef(rawURL string, kind ArtifactKind) ArtifactRef
NewURLRef references an artifact available at a remote URL.
type ArtifactSource ¶
type ArtifactSource string
ArtifactSource identifies how an artifact is referenced.
const ( ArtifactSourceLocal ArtifactSource = "local" ArtifactSourceURL ArtifactSource = "url" ArtifactSourceGenerated ArtifactSource = "generated" )
type CacheKey ¶
type CacheKey string
CacheKey identifies a deterministic artifact-processing result.
func NewCacheKey ¶
func NewCacheKey(tool string, params map[string]any, refs []ArtifactRef) CacheKey
NewCacheKey derives a stable cache key from tool name, params, and input artifacts.
type LineageEdge ¶
type LineageEdge struct {
Parent ArtifactRef `json:"parent"`
Child ArtifactRef `json:"child"`
Operation string `json:"operation,omitempty"`
}
LineageEdge captures a derivation relationship between two artifacts.
type LineageGraph ¶
type LineageGraph struct {
Edges []LineageEdge `json:"edges,omitempty"`
}
LineageGraph stores derivation edges between runtime artifacts.
func (*LineageGraph) AddEdge ¶
func (g *LineageGraph) AddEdge(parent, child ArtifactRef, operation string)
AddEdge records a derivation from parent to child.
func (LineageGraph) AncestorsOf ¶
func (g LineageGraph) AncestorsOf(child ArtifactRef) []ArtifactRef
AncestorsOf returns the provenance chain from the direct parent upward.
func (LineageGraph) ChildrenOf ¶
func (g LineageGraph) ChildrenOf(parent ArtifactRef) []ArtifactRef
ChildrenOf returns the direct derived artifacts for a given parent.