// Package state persists report artifacts and metadata. package state import ( "context" "gitea.maximumdirect.net/eric/weatherreporter/internal/adapters/scriptorium" "gitea.maximumdirect.net/eric/weatherreporter/internal/briefing" "gitea.maximumdirect.net/eric/weatherreporter/internal/promptinput" "gitea.maximumdirect.net/eric/weatherreporter/internal/report" ) type Store interface { Paths(report.Resolved) (ArtifactPaths, error) SaveBriefing(context.Context, report.Resolved, briefing.Package) (string, error) SaveDataPackage(context.Context, report.Resolved, promptinput.Package) (string, error) SavePreflight(context.Context, report.Resolved, *scriptorium.RenderResult) (string, error) PrepareRenderedReport(context.Context, report.Resolved) (string, error) SaveMetadata(context.Context, Metadata) (string, error) FindPriorSnapshot(context.Context, report.Resolved) (*PriorSnapshot, error) FindPriorDailySnapshot(context.Context, report.Resolved) (*PriorSnapshot, error) LoadBriefing(context.Context, string) (briefing.Package, error) } type PriorSnapshot struct { Metadata Metadata BriefingPath string }