Versions in this module Expand all Collapse all v0 v0.1.0 Aug 7, 2026 Changes in this version + var ErrNotFound = errors.New("not found") + func Analyze(ctx context.Context, manifests map[string]string, prev *model.ContractVersion) (model.ContractVersion, []model.ChangeEvent, error) + type Analysis struct + ChangeCount int + Changes []model.ChangeEvent + ConsumerCount int + CreatedAt time.Time + Hash string + ID string + IsBaseline bool + IssuerCount int + ProjectID string + TriggerKind string + TriggerRef string + Version model.ContractVersion + func (a Analysis) Summary() AnalysisSummary + type AnalysisSummary struct + ChangeCount int + ConsumerCount int + CreatedAt time.Time + Hash string + ID string + IsBaseline bool + IssuerCount int + TriggerKind string + TriggerRef string + type Config struct + Addr string + AllowedOrigins []string + BaseURL string + DevLogin bool + FrontendURL string + GitHubClientID string + GitHubSecret string + SecureCookies bool + SessionSecret []byte + func ConfigFromEnv() Config + type GitHub struct + ClientID string + ClientSecret string + func NewGitHub(clientID, clientSecret string) *GitHub + func (g *GitHub) AuthURL(redirectURI, state, scope string) string + func (g *GitHub) Configured() bool + func (g *GitHub) Exchange(ctx context.Context, code, redirectURI string) (string, error) + func (g *GitHub) FetchManifests(ctx context.Context, repo, ref, subpath, token string) (map[string]string, string, error) + func (g *GitHub) FetchUser(ctx context.Context, token string) (User, error) + type MemoryStore struct + func NewMemoryStore() *MemoryStore + func (s *MemoryStore) Close() error + func (s *MemoryStore) CreateProject(_ context.Context, p Project) error + func (s *MemoryStore) DeleteProject(_ context.Context, id string) error + func (s *MemoryStore) GetAnalysis(_ context.Context, id string) (Analysis, error) + func (s *MemoryStore) GetProject(_ context.Context, id string) (Project, error) + func (s *MemoryStore) GetUser(_ context.Context, id string) (User, error) + func (s *MemoryStore) LatestAnalysis(ctx context.Context, projectID string) (Analysis, error) + func (s *MemoryStore) ListAnalyses(_ context.Context, projectID string, limit int) ([]Analysis, error) + func (s *MemoryStore) ListProjects(_ context.Context, ownerID string) ([]Project, error) + func (s *MemoryStore) SaveAnalysis(_ context.Context, a Analysis) error + func (s *MemoryStore) UpsertUser(_ context.Context, u User) error + type Project struct + CreatedAt time.Time + ID string + LatestAnalysisID string + Name string + OwnerID string + Source Source + type Server struct + func NewServer(cfg Config, store Store) *Server + func (s *Server) Routes() http.Handler + type Source struct + Kind SourceKind + Path string + Ref string + Repo string + type SourceKind string + const SourceGitHub + const SourceUpload + type Store interface + Close func() error + CreateProject func(ctx context.Context, p Project) error + DeleteProject func(ctx context.Context, id string) error + GetAnalysis func(ctx context.Context, id string) (Analysis, error) + GetProject func(ctx context.Context, id string) (Project, error) + GetUser func(ctx context.Context, id string) (User, error) + LatestAnalysis func(ctx context.Context, projectID string) (Analysis, error) + ListAnalyses func(ctx context.Context, projectID string, limit int) ([]Analysis, error) + ListProjects func(ctx context.Context, ownerID string) ([]Project, error) + SaveAnalysis func(ctx context.Context, a Analysis) error + UpsertUser func(ctx context.Context, u User) error + type User struct + AvatarURL string + CreatedAt time.Time + Email string + ID string + Login string + Name string