// Package domain contains pure domain models with no external dependencies. package domain import "time" // Repo represents a git repository. type Repo struct { ID int64 Owner string Name string FullName string // owner/name Description string Private bool CloneSSH string // git@git.threesix.ai:owner/name.git CloneHTTP string // https://git.threesix.ai/owner/name.git HTMLURL string // https://git.threesix.ai/owner/name CreatedAt time.Time UpdatedAt time.Time } // DeployKey represents an SSH key for repository access. type DeployKey struct { ID int64 RepoID int64 Title string PublicKey string ReadOnly bool CreatedAt time.Time } // RepoWebhook represents a webhook configuration on a repository. type RepoWebhook struct { ID int64 RepoID int64 URL string Secret string Events []string Active bool HookType string // gitea, woodpecker, etc. }