29 lines
1.1 KiB
Go
29 lines
1.1 KiB
Go
// 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
|
|
}
|