Help us shape the future of Go! Take the 2026 Go Developer Survey

orgsdb

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 10, 2026 License: AGPL-3.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddOrgMemberParams

type AddOrgMemberParams struct {
	OrgID           int64
	UserID          int64
	Role            OrgRole
	InvitedByUserID pgtype.Int8
}

type AddTeamMemberParams

type AddTeamMemberParams struct {
	TeamID        int64
	UserID        int64
	Role          TeamRole
	AddedByUserID pgtype.Int8
}

type AuthAuditLog

type AuthAuditLog struct {
	ID         int64
	ActorID    pgtype.Int8
	Action     string
	TargetType string
	TargetID   pgtype.Int8
	Meta       []byte
	CreatedAt  pgtype.Timestamptz
}

type AuthThrottle

type AuthThrottle struct {
	ID              int64
	Scope           string
	Identifier      string
	Hits            int32
	WindowStartedAt pgtype.Timestamptz
}

type BranchProtectionRule

type BranchProtectionRule struct {
	ID                             int64
	RepoID                         int64
	Pattern                        string
	PreventForcePush               bool
	PreventDeletion                bool
	RequirePrForPush               bool
	AllowedPusherUserIds           []int64
	RequireSignedCommits           bool
	StatusChecksRequired           []string
	CreatedAt                      pgtype.Timestamptz
	UpdatedAt                      pgtype.Timestamptz
	CreatedByUserID                pgtype.Int8
	RequiredReviewCount            int32
	DismissStaleReviewsOnPush      bool
	RequireCodeOwnerReview         bool
	DismissStaleStatusChecksOnPush bool
}

type ChangeOrgMemberRoleParams

type ChangeOrgMemberRoleParams struct {
	OrgID  int64
	UserID int64
	Role   OrgRole
}

type CheckConclusion

type CheckConclusion string
const (
	CheckConclusionSuccess        CheckConclusion = "success"
	CheckConclusionFailure        CheckConclusion = "failure"
	CheckConclusionNeutral        CheckConclusion = "neutral"
	CheckConclusionCancelled      CheckConclusion = "cancelled"
	CheckConclusionSkipped        CheckConclusion = "skipped"
	CheckConclusionTimedOut       CheckConclusion = "timed_out"
	CheckConclusionActionRequired CheckConclusion = "action_required"
	CheckConclusionStale          CheckConclusion = "stale"
)

func (*CheckConclusion) Scan

func (e *CheckConclusion) Scan(src interface{}) error

type CheckRun

type CheckRun struct {
	ID          int64
	SuiteID     int64
	RepoID      int64
	HeadSha     string
	Name        string
	Status      CheckStatus
	Conclusion  NullCheckConclusion
	StartedAt   pgtype.Timestamptz
	CompletedAt pgtype.Timestamptz
	DetailsUrl  string
	Output      []byte
	ExternalID  pgtype.Text
	CreatedAt   pgtype.Timestamptz
	UpdatedAt   pgtype.Timestamptz
}

type CheckStatus

type CheckStatus string
const (
	CheckStatusQueued     CheckStatus = "queued"
	CheckStatusInProgress CheckStatus = "in_progress"
	CheckStatusCompleted  CheckStatus = "completed"
	CheckStatusPending    CheckStatus = "pending"
)

func (*CheckStatus) Scan

func (e *CheckStatus) Scan(src interface{}) error

type CheckSuite

type CheckSuite struct {
	ID         int64
	RepoID     int64
	HeadSha    string
	AppSlug    string
	Status     CheckStatus
	Conclusion NullCheckConclusion
	CreatedAt  pgtype.Timestamptz
	UpdatedAt  pgtype.Timestamptz
}

type CodeSearchContent

type CodeSearchContent struct {
	RepoID      int64
	RefName     string
	Path        string
	ContentTsv  interface{}
	ContentTrgm string
}

type CodeSearchPath

type CodeSearchPath struct {
	RepoID  int64
	RefName string
	Path    string
	Tsv     interface{}
}

type CollabRole

type CollabRole string
const (
	CollabRoleRead     CollabRole = "read"
	CollabRoleTriage   CollabRole = "triage"
	CollabRoleWrite    CollabRole = "write"
	CollabRoleMaintain CollabRole = "maintain"
	CollabRoleAdmin    CollabRole = "admin"
)

func (*CollabRole) Scan

func (e *CollabRole) Scan(src interface{}) error

type CreateOrgInvitationParams

type CreateOrgInvitationParams struct {
	OrgID           int64
	InvitedByUserID pgtype.Int8
	Role            OrgRole
	TokenHash       []byte
	ExpiresAt       pgtype.Timestamptz
	TargetUserID    pgtype.Int8
	TargetEmail     pgtype.Text
}

type CreateOrgParams

type CreateOrgParams struct {
	Slug            string
	DisplayName     string
	Description     string
	BillingEmail    string
	CreatedByUserID pgtype.Int8
}

type CreateTeamParams

type CreateTeamParams struct {
	OrgID           int64
	Slug            string
	DisplayName     string
	Description     string
	Privacy         TeamPrivacy
	ParentTeamID    pgtype.Int8
	CreatedByUserID pgtype.Int8
}

type DBTX

type DBTX interface {
	Exec(context.Context, string, ...interface{}) (pgconn.CommandTag, error)
	Query(context.Context, string, ...interface{}) (pgx.Rows, error)
	QueryRow(context.Context, string, ...interface{}) pgx.Row
}

type DomainEvent

type DomainEvent struct {
	ID          int64
	ActorUserID pgtype.Int8
	Kind        string
	RepoID      pgtype.Int8
	SourceKind  string
	SourceID    int64
	Public      bool
	Payload     []byte
	CreatedAt   pgtype.Timestamptz
}

type DomainEventsProcessed

type DomainEventsProcessed struct {
	Consumer    string
	LastEventID int64
	UpdatedAt   pgtype.Timestamptz
}

type EmailVerification

type EmailVerification struct {
	ID          int64
	UserEmailID int64
	TokenHash   []byte
	ExpiresAt   pgtype.Timestamptz
	UsedAt      pgtype.Timestamptz
	CreatedAt   pgtype.Timestamptz
}

type GetExistingPendingInvitationParams

type GetExistingPendingInvitationParams struct {
	OrgID        int64
	TargetUserID pgtype.Int8
	TargetEmail  pgtype.Text
}

type GetOrgMemberParams

type GetOrgMemberParams struct {
	OrgID  int64
	UserID int64
}

type GetTeamByOrgAndSlugParams

type GetTeamByOrgAndSlugParams struct {
	OrgID int64
	Slug  string
}

type GetTeamRepoAccessParams

type GetTeamRepoAccessParams struct {
	TeamID int64
	RepoID int64
}

type GrantTeamRepoAccessParams

type GrantTeamRepoAccessParams struct {
	TeamID        int64
	RepoID        int64
	Role          TeamRepoRole
	AddedByUserID pgtype.Int8
}

type Issue

type Issue struct {
	ID                int64
	RepoID            int64
	Number            int64
	Kind              IssueKind
	Title             string
	Body              string
	BodyHtmlCached    pgtype.Text
	MdPipelineVersion int32
	AuthorUserID      pgtype.Int8
	State             IssueState
	StateReason       NullIssueStateReason
	Locked            bool
	LockReason        pgtype.Text
	MilestoneID       pgtype.Int8
	CreatedAt         pgtype.Timestamptz
	UpdatedAt         pgtype.Timestamptz
	EditedAt          pgtype.Timestamptz
	ClosedAt          pgtype.Timestamptz
	ClosedByUserID    pgtype.Int8
}

type IssueAssignee

type IssueAssignee struct {
	IssueID          int64
	UserID           int64
	AssignedAt       pgtype.Timestamptz
	AssignedByUserID pgtype.Int8
}

type IssueComment

type IssueComment struct {
	ID                int64
	IssueID           int64
	AuthorUserID      pgtype.Int8
	Body              string
	BodyHtmlCached    pgtype.Text
	MdPipelineVersion int32
	CreatedAt         pgtype.Timestamptz
	UpdatedAt         pgtype.Timestamptz
	EditedAt          pgtype.Timestamptz
}

type IssueEvent

type IssueEvent struct {
	ID          int64
	IssueID     int64
	ActorUserID pgtype.Int8
	Kind        string
	Meta        []byte
	RefTargetID pgtype.Int8
	CreatedAt   pgtype.Timestamptz
}

type IssueKind

type IssueKind string
const (
	IssueKindIssue IssueKind = "issue"
	IssueKindPr    IssueKind = "pr"
)

func (*IssueKind) Scan

func (e *IssueKind) Scan(src interface{}) error

type IssueLabel

type IssueLabel struct {
	IssueID         int64
	LabelID         int64
	AppliedAt       pgtype.Timestamptz
	AppliedByUserID pgtype.Int8
}

type IssueRefSource

type IssueRefSource string
const (
	IssueRefSourceCommentBody   IssueRefSource = "comment_body"
	IssueRefSourceIssueBody     IssueRefSource = "issue_body"
	IssueRefSourceCommitMessage IssueRefSource = "commit_message"
)

func (*IssueRefSource) Scan

func (e *IssueRefSource) Scan(src interface{}) error

type IssueReference

type IssueReference struct {
	ID             int64
	SourceIssueID  pgtype.Int8
	TargetIssueID  int64
	SourceKind     IssueRefSource
	SourceObjectID pgtype.Int8
	CreatedAt      pgtype.Timestamptz
}

type IssueState

type IssueState string
const (
	IssueStateOpen   IssueState = "open"
	IssueStateClosed IssueState = "closed"
)

func (*IssueState) Scan

func (e *IssueState) Scan(src interface{}) error

type IssueStateReason

type IssueStateReason string
const (
	IssueStateReasonCompleted  IssueStateReason = "completed"
	IssueStateReasonNotPlanned IssueStateReason = "not_planned"
	IssueStateReasonReopened   IssueStateReason = "reopened"
	IssueStateReasonDuplicate  IssueStateReason = "duplicate"
)

func (*IssueStateReason) Scan

func (e *IssueStateReason) Scan(src interface{}) error

type IssuesSearch

type IssuesSearch struct {
	IssueID      int64
	RepoID       int64
	Kind         IssueKind
	State        IssueState
	AuthorUserID pgtype.Int8
	Tsv          interface{}
}

type Job

type Job struct {
	ID          int64
	Kind        string
	Payload     []byte
	RunAt       pgtype.Timestamptz
	Attempts    int32
	MaxAttempts int32
	LastError   pgtype.Text
	LockedBy    pgtype.Text
	LockedAt    pgtype.Timestamptz
	CompletedAt pgtype.Timestamptz
	FailedAt    pgtype.Timestamptz
	CreatedAt   pgtype.Timestamptz
}

type Label

type Label struct {
	ID          int64
	RepoID      int64
	Name        string
	Color       string
	Description string
	CreatedAt   pgtype.Timestamptz
}

type ListOrgMembersRow

type ListOrgMembersRow struct {
	OrgID           int64
	UserID          int64
	Role            OrgRole
	InvitedByUserID pgtype.Int8
	JoinedAt        pgtype.Timestamptz
	Username        string
	DisplayName     string
}

type ListOrgsForUserRow

type ListOrgsForUserRow struct {
	OrgID           int64
	Role            OrgRole
	Slug            string
	DisplayName     string
	AvatarObjectKey pgtype.Text
}

type ListPendingInvitationsForEmailRow

type ListPendingInvitationsForEmailRow struct {
	ID              int64
	OrgID           int64
	InvitedByUserID pgtype.Int8
	TargetUserID    pgtype.Int8
	TargetEmail     pgtype.Text
	Role            OrgRole
	TokenHash       []byte
	ExpiresAt       pgtype.Timestamptz
	AcceptedAt      pgtype.Timestamptz
	DeclinedAt      pgtype.Timestamptz
	CanceledAt      pgtype.Timestamptz
	CreatedAt       pgtype.Timestamptz
	OrgSlug         string
	OrgDisplayName  string
}

type ListPendingInvitationsForOrgRow

type ListPendingInvitationsForOrgRow struct {
	ID                int64
	OrgID             int64
	InvitedByUserID   pgtype.Int8
	TargetUserID      pgtype.Int8
	TargetEmail       pgtype.Text
	Role              OrgRole
	TokenHash         []byte
	ExpiresAt         pgtype.Timestamptz
	AcceptedAt        pgtype.Timestamptz
	DeclinedAt        pgtype.Timestamptz
	CanceledAt        pgtype.Timestamptz
	CreatedAt         pgtype.Timestamptz
	TargetUsername    pgtype.Text
	InvitedByUsername pgtype.Text
}

type ListPendingInvitationsForUserRow

type ListPendingInvitationsForUserRow struct {
	ID              int64
	OrgID           int64
	InvitedByUserID pgtype.Int8
	TargetUserID    pgtype.Int8
	TargetEmail     pgtype.Text
	Role            OrgRole
	TokenHash       []byte
	ExpiresAt       pgtype.Timestamptz
	AcceptedAt      pgtype.Timestamptz
	DeclinedAt      pgtype.Timestamptz
	CanceledAt      pgtype.Timestamptz
	CreatedAt       pgtype.Timestamptz
	OrgSlug         string
	OrgDisplayName  string
}

type ListRepoTeamGrantsRow

type ListRepoTeamGrantsRow struct {
	TeamID          int64
	RepoID          int64
	Role            TeamRepoRole
	AddedByUserID   pgtype.Int8
	AddedAt         pgtype.Timestamptz
	TeamSlug        string
	TeamDisplayName string
	TeamPrivacy     string
}

type ListTeamAccessForRepoAndTeamsParams

type ListTeamAccessForRepoAndTeamsParams struct {
	RepoID  int64
	Column2 []int64
}

type ListTeamAccessForRepoAndTeamsRow

type ListTeamAccessForRepoAndTeamsRow struct {
	TeamID int64
	RepoID int64
	Role   TeamRepoRole
}

type ListTeamMembersRow

type ListTeamMembersRow struct {
	TeamID        int64
	UserID        int64
	Role          TeamRole
	AddedByUserID pgtype.Int8
	AddedAt       pgtype.Timestamptz
	Username      string
	DisplayName   string
}

type ListTeamRepoAccessRow

type ListTeamRepoAccessRow struct {
	TeamID        int64
	RepoID        int64
	Role          TeamRepoRole
	AddedByUserID pgtype.Int8
	AddedAt       pgtype.Timestamptz
	RepoName      string
	Visibility    string
}

type ListTeamsForUserInOrgParams

type ListTeamsForUserInOrgParams struct {
	OrgID  int64
	UserID int64
}

type ListTeamsForUserInOrgRow

type ListTeamsForUserInOrgRow struct {
	ID              int64
	OrgID           int64
	Slug            string
	DisplayName     string
	Description     string
	ParentTeamID    pgtype.Int8
	Privacy         TeamPrivacy
	CreatedByUserID pgtype.Int8
	CreatedAt       pgtype.Timestamptz
	UpdatedAt       pgtype.Timestamptz
	MemberRole      TeamRole
}

type Meta

type Meta struct {
	Key       string
	Value     []byte
	UpdatedAt pgtype.Timestamptz
}

type Milestone

type Milestone struct {
	ID          int64
	RepoID      int64
	Title       string
	Description string
	State       MilestoneState
	DueOn       pgtype.Timestamptz
	CreatedAt   pgtype.Timestamptz
	ClosedAt    pgtype.Timestamptz
}

type MilestoneState

type MilestoneState string
const (
	MilestoneStateOpen   MilestoneState = "open"
	MilestoneStateClosed MilestoneState = "closed"
)

func (*MilestoneState) Scan

func (e *MilestoneState) Scan(src interface{}) error

type Notification

type Notification struct {
	ID              int64
	RecipientUserID int64
	Kind            string
	Reason          string
	RepoID          pgtype.Int8
	ThreadKind      NullNotificationThreadKind
	ThreadID        pgtype.Int8
	SourceEventID   pgtype.Int8
	Unread          bool
	LastEventAt     pgtype.Timestamptz
	LastActorUserID pgtype.Int8
	Summary         []byte
	CreatedAt       pgtype.Timestamptz
	UpdatedAt       pgtype.Timestamptz
}

type NotificationEmailLog

type NotificationEmailLog struct {
	ID              int64
	RecipientUserID int64
	NotificationID  pgtype.Int8
	ThreadKind      NullNotificationThreadKind
	ThreadID        pgtype.Int8
	SentAt          pgtype.Timestamptz
	MessageID       pgtype.Text
}

type NotificationThread

type NotificationThread struct {
	RecipientUserID int64
	ThreadKind      NotificationThreadKind
	ThreadID        int64
	Subscribed      bool
	Reason          string
	UpdatedAt       pgtype.Timestamptz
}

type NotificationThreadKind

type NotificationThreadKind string
const (
	NotificationThreadKindIssue NotificationThreadKind = "issue"
	NotificationThreadKindPr    NotificationThreadKind = "pr"
)

func (*NotificationThreadKind) Scan

func (e *NotificationThreadKind) Scan(src interface{}) error

type NullCheckConclusion

type NullCheckConclusion struct {
	CheckConclusion CheckConclusion
	Valid           bool // Valid is true if CheckConclusion is not NULL
}

func (*NullCheckConclusion) Scan

func (ns *NullCheckConclusion) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullCheckConclusion) Value

func (ns NullCheckConclusion) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullCheckStatus

type NullCheckStatus struct {
	CheckStatus CheckStatus
	Valid       bool // Valid is true if CheckStatus is not NULL
}

func (*NullCheckStatus) Scan

func (ns *NullCheckStatus) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullCheckStatus) Value

func (ns NullCheckStatus) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullCollabRole

type NullCollabRole struct {
	CollabRole CollabRole
	Valid      bool // Valid is true if CollabRole is not NULL
}

func (*NullCollabRole) Scan

func (ns *NullCollabRole) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullCollabRole) Value

func (ns NullCollabRole) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullIssueKind

type NullIssueKind struct {
	IssueKind IssueKind
	Valid     bool // Valid is true if IssueKind is not NULL
}

func (*NullIssueKind) Scan

func (ns *NullIssueKind) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullIssueKind) Value

func (ns NullIssueKind) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullIssueRefSource

type NullIssueRefSource struct {
	IssueRefSource IssueRefSource
	Valid          bool // Valid is true if IssueRefSource is not NULL
}

func (*NullIssueRefSource) Scan

func (ns *NullIssueRefSource) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullIssueRefSource) Value

func (ns NullIssueRefSource) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullIssueState

type NullIssueState struct {
	IssueState IssueState
	Valid      bool // Valid is true if IssueState is not NULL
}

func (*NullIssueState) Scan

func (ns *NullIssueState) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullIssueState) Value

func (ns NullIssueState) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullIssueStateReason

type NullIssueStateReason struct {
	IssueStateReason IssueStateReason
	Valid            bool // Valid is true if IssueStateReason is not NULL
}

func (*NullIssueStateReason) Scan

func (ns *NullIssueStateReason) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullIssueStateReason) Value

func (ns NullIssueStateReason) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullMilestoneState

type NullMilestoneState struct {
	MilestoneState MilestoneState
	Valid          bool // Valid is true if MilestoneState is not NULL
}

func (*NullMilestoneState) Scan

func (ns *NullMilestoneState) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullMilestoneState) Value

func (ns NullMilestoneState) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullNotificationThreadKind

type NullNotificationThreadKind struct {
	NotificationThreadKind NotificationThreadKind
	Valid                  bool // Valid is true if NotificationThreadKind is not NULL
}

func (*NullNotificationThreadKind) Scan

func (ns *NullNotificationThreadKind) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullNotificationThreadKind) Value

Value implements the driver Valuer interface.

type NullOrgPlan

type NullOrgPlan struct {
	OrgPlan OrgPlan
	Valid   bool // Valid is true if OrgPlan is not NULL
}

func (*NullOrgPlan) Scan

func (ns *NullOrgPlan) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullOrgPlan) Value

func (ns NullOrgPlan) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullOrgRole

type NullOrgRole struct {
	OrgRole OrgRole
	Valid   bool // Valid is true if OrgRole is not NULL
}

func (*NullOrgRole) Scan

func (ns *NullOrgRole) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullOrgRole) Value

func (ns NullOrgRole) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullPrFileStatus

type NullPrFileStatus struct {
	PrFileStatus PrFileStatus
	Valid        bool // Valid is true if PrFileStatus is not NULL
}

func (*NullPrFileStatus) Scan

func (ns *NullPrFileStatus) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullPrFileStatus) Value

func (ns NullPrFileStatus) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullPrMergeMethod

type NullPrMergeMethod struct {
	PrMergeMethod PrMergeMethod
	Valid         bool // Valid is true if PrMergeMethod is not NULL
}

func (*NullPrMergeMethod) Scan

func (ns *NullPrMergeMethod) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullPrMergeMethod) Value

func (ns NullPrMergeMethod) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullPrMergeableState

type NullPrMergeableState struct {
	PrMergeableState PrMergeableState
	Valid            bool // Valid is true if PrMergeableState is not NULL
}

func (*NullPrMergeableState) Scan

func (ns *NullPrMergeableState) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullPrMergeableState) Value

func (ns NullPrMergeableState) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullPrReviewSide

type NullPrReviewSide struct {
	PrReviewSide PrReviewSide
	Valid        bool // Valid is true if PrReviewSide is not NULL
}

func (*NullPrReviewSide) Scan

func (ns *NullPrReviewSide) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullPrReviewSide) Value

func (ns NullPrReviewSide) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullPrReviewState

type NullPrReviewState struct {
	PrReviewState PrReviewState
	Valid         bool // Valid is true if PrReviewState is not NULL
}

func (*NullPrReviewState) Scan

func (ns *NullPrReviewState) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullPrReviewState) Value

func (ns NullPrReviewState) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullPrincipalKind

type NullPrincipalKind struct {
	PrincipalKind PrincipalKind
	Valid         bool // Valid is true if PrincipalKind is not NULL
}

func (*NullPrincipalKind) Scan

func (ns *NullPrincipalKind) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullPrincipalKind) Value

func (ns NullPrincipalKind) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullRepoInitStatus

type NullRepoInitStatus struct {
	RepoInitStatus RepoInitStatus
	Valid          bool // Valid is true if RepoInitStatus is not NULL
}

func (*NullRepoInitStatus) Scan

func (ns *NullRepoInitStatus) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullRepoInitStatus) Value

func (ns NullRepoInitStatus) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullRepoVisibility

type NullRepoVisibility struct {
	RepoVisibility RepoVisibility
	Valid          bool // Valid is true if RepoVisibility is not NULL
}

func (*NullRepoVisibility) Scan

func (ns *NullRepoVisibility) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullRepoVisibility) Value

func (ns NullRepoVisibility) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullTeamPrivacy

type NullTeamPrivacy struct {
	TeamPrivacy TeamPrivacy
	Valid       bool // Valid is true if TeamPrivacy is not NULL
}

func (*NullTeamPrivacy) Scan

func (ns *NullTeamPrivacy) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullTeamPrivacy) Value

func (ns NullTeamPrivacy) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullTeamRepoRole

type NullTeamRepoRole struct {
	TeamRepoRole TeamRepoRole
	Valid        bool // Valid is true if TeamRepoRole is not NULL
}

func (*NullTeamRepoRole) Scan

func (ns *NullTeamRepoRole) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullTeamRepoRole) Value

func (ns NullTeamRepoRole) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullTeamRole

type NullTeamRole struct {
	TeamRole TeamRole
	Valid    bool // Valid is true if TeamRole is not NULL
}

func (*NullTeamRole) Scan

func (ns *NullTeamRole) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullTeamRole) Value

func (ns NullTeamRole) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullTransactionalEmailStatus

type NullTransactionalEmailStatus struct {
	TransactionalEmailStatus TransactionalEmailStatus
	Valid                    bool // Valid is true if TransactionalEmailStatus is not NULL
}

func (*NullTransactionalEmailStatus) Scan

func (ns *NullTransactionalEmailStatus) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullTransactionalEmailStatus) Value

Value implements the driver Valuer interface.

type NullTransferPrincipalKind

type NullTransferPrincipalKind struct {
	TransferPrincipalKind TransferPrincipalKind
	Valid                 bool // Valid is true if TransferPrincipalKind is not NULL
}

func (*NullTransferPrincipalKind) Scan

func (ns *NullTransferPrincipalKind) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullTransferPrincipalKind) Value

Value implements the driver Valuer interface.

type NullTransferStatus

type NullTransferStatus struct {
	TransferStatus TransferStatus
	Valid          bool // Valid is true if TransferStatus is not NULL
}

func (*NullTransferStatus) Scan

func (ns *NullTransferStatus) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullTransferStatus) Value

func (ns NullTransferStatus) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullWatchLevel

type NullWatchLevel struct {
	WatchLevel WatchLevel
	Valid      bool // Valid is true if WatchLevel is not NULL
}

func (*NullWatchLevel) Scan

func (ns *NullWatchLevel) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullWatchLevel) Value

func (ns NullWatchLevel) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullWebhookContentType

type NullWebhookContentType struct {
	WebhookContentType WebhookContentType
	Valid              bool // Valid is true if WebhookContentType is not NULL
}

func (*NullWebhookContentType) Scan

func (ns *NullWebhookContentType) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullWebhookContentType) Value

func (ns NullWebhookContentType) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type NullWebhookDeliveryStatus

type NullWebhookDeliveryStatus struct {
	WebhookDeliveryStatus WebhookDeliveryStatus
	Valid                 bool // Valid is true if WebhookDeliveryStatus is not NULL
}

func (*NullWebhookDeliveryStatus) Scan

func (ns *NullWebhookDeliveryStatus) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullWebhookDeliveryStatus) Value

Value implements the driver Valuer interface.

type NullWebhookOwnerKind

type NullWebhookOwnerKind struct {
	WebhookOwnerKind WebhookOwnerKind
	Valid            bool // Valid is true if WebhookOwnerKind is not NULL
}

func (*NullWebhookOwnerKind) Scan

func (ns *NullWebhookOwnerKind) Scan(value interface{}) error

Scan implements the Scanner interface.

func (NullWebhookOwnerKind) Value

func (ns NullWebhookOwnerKind) Value() (driver.Value, error)

Value implements the driver Valuer interface.

type Org

type Org struct {
	ID                    int64
	Slug                  string
	DisplayName           string
	Description           string
	AvatarObjectKey       pgtype.Text
	Location              string
	Website               string
	BillingEmail          string
	Plan                  OrgPlan
	AllowMemberRepoCreate bool
	CreatedByUserID       pgtype.Int8
	SuspendedAt           pgtype.Timestamptz
	SuspendedReason       pgtype.Text
	DeletedAt             pgtype.Timestamptz
	CreatedAt             pgtype.Timestamptz
	UpdatedAt             pgtype.Timestamptz
}

type OrgInvitation

type OrgInvitation struct {
	ID              int64
	OrgID           int64
	InvitedByUserID pgtype.Int8
	TargetUserID    pgtype.Int8
	TargetEmail     pgtype.Text
	Role            OrgRole
	TokenHash       []byte
	ExpiresAt       pgtype.Timestamptz
	AcceptedAt      pgtype.Timestamptz
	DeclinedAt      pgtype.Timestamptz
	CanceledAt      pgtype.Timestamptz
	CreatedAt       pgtype.Timestamptz
}

type OrgMember

type OrgMember struct {
	OrgID           int64
	UserID          int64
	Role            OrgRole
	InvitedByUserID pgtype.Int8
	JoinedAt        pgtype.Timestamptz
}

type OrgPlan

type OrgPlan string
const (
	OrgPlanFree       OrgPlan = "free"
	OrgPlanTeam       OrgPlan = "team"
	OrgPlanEnterprise OrgPlan = "enterprise"
)

func (*OrgPlan) Scan

func (e *OrgPlan) Scan(src interface{}) error

type OrgRole

type OrgRole string
const (
	OrgRoleOwner  OrgRole = "owner"
	OrgRoleMember OrgRole = "member"
)

func (*OrgRole) Scan

func (e *OrgRole) Scan(src interface{}) error

type PasswordReset

type PasswordReset struct {
	ID        int64
	UserID    int64
	TokenHash []byte
	ExpiresAt pgtype.Timestamptz
	UsedAt    pgtype.Timestamptz
	CreatedAt pgtype.Timestamptz
}

type PrFileStatus

type PrFileStatus string
const (
	PrFileStatusAdded    PrFileStatus = "added"
	PrFileStatusModified PrFileStatus = "modified"
	PrFileStatusDeleted  PrFileStatus = "deleted"
	PrFileStatusRenamed  PrFileStatus = "renamed"
	PrFileStatusCopied   PrFileStatus = "copied"
)

func (*PrFileStatus) Scan

func (e *PrFileStatus) Scan(src interface{}) error

type PrMergeMethod

type PrMergeMethod string
const (
	PrMergeMethodMerge  PrMergeMethod = "merge"
	PrMergeMethodSquash PrMergeMethod = "squash"
	PrMergeMethodRebase PrMergeMethod = "rebase"
)

func (*PrMergeMethod) Scan

func (e *PrMergeMethod) Scan(src interface{}) error

type PrMergeableState

type PrMergeableState string
const (
	PrMergeableStateUnknown PrMergeableState = "unknown"
	PrMergeableStateClean   PrMergeableState = "clean"
	PrMergeableStateDirty   PrMergeableState = "dirty"
	PrMergeableStateBlocked PrMergeableState = "blocked"
	PrMergeableStateBehind  PrMergeableState = "behind"
)

func (*PrMergeableState) Scan

func (e *PrMergeableState) Scan(src interface{}) error

type PrReview

type PrReview struct {
	ID                int64
	PrIssueID         int64
	AuthorUserID      pgtype.Int8
	State             PrReviewState
	Body              string
	BodyHtmlCached    pgtype.Text
	SubmittedAt       pgtype.Timestamptz
	DismissedAt       pgtype.Timestamptz
	DismissedByUserID pgtype.Int8
	DismissalReason   string
}

type PrReviewComment

type PrReviewComment struct {
	ID                int64
	PrIssueID         int64
	ReviewID          pgtype.Int8
	AuthorUserID      pgtype.Int8
	FilePath          string
	Side              PrReviewSide
	OriginalCommitSha string
	OriginalLine      int32
	OriginalPosition  int32
	CurrentPosition   pgtype.Int4
	Body              string
	BodyHtmlCached    pgtype.Text
	InReplyToID       pgtype.Int8
	Pending           bool
	ResolvedAt        pgtype.Timestamptz
	ResolvedByUserID  pgtype.Int8
	CreatedAt         pgtype.Timestamptz
	UpdatedAt         pgtype.Timestamptz
	EditedAt          pgtype.Timestamptz
}

type PrReviewRequest

type PrReviewRequest struct {
	ID                  int64
	PrIssueID           int64
	RequestedUserID     pgtype.Int8
	RequestedTeamID     pgtype.Int8
	RequestedByUserID   pgtype.Int8
	RequestedAt         pgtype.Timestamptz
	DismissedAt         pgtype.Timestamptz
	SatisfiedByReviewID pgtype.Int8
}

type PrReviewSide

type PrReviewSide string
const (
	PrReviewSideLeft  PrReviewSide = "left"
	PrReviewSideRight PrReviewSide = "right"
)

func (*PrReviewSide) Scan

func (e *PrReviewSide) Scan(src interface{}) error

type PrReviewState

type PrReviewState string
const (
	PrReviewStateComment        PrReviewState = "comment"
	PrReviewStateApprove        PrReviewState = "approve"
	PrReviewStateRequestChanges PrReviewState = "request_changes"
)

func (*PrReviewState) Scan

func (e *PrReviewState) Scan(src interface{}) error

type Principal

type Principal struct {
	Slug string
	Kind PrincipalKind
	ID   int64
}

type PrincipalKind

type PrincipalKind string
const (
	PrincipalKindUser PrincipalKind = "user"
	PrincipalKindOrg  PrincipalKind = "org"
)

func (*PrincipalKind) Scan

func (e *PrincipalKind) Scan(src interface{}) error

type PullRequest

type PullRequest struct {
	IssueID            int64
	BaseRef            string
	HeadRef            string
	HeadRepoID         int64
	BaseOid            string
	HeadOid            string
	Draft              bool
	Mergeable          pgtype.Bool
	MergeableState     PrMergeableState
	MergeCommitSha     pgtype.Text
	MergedAt           pgtype.Timestamptz
	MergedByUserID     pgtype.Int8
	MergeMethod        NullPrMergeMethod
	BaseOidAtMerge     pgtype.Text
	HeadOidAtMerge     pgtype.Text
	LastSynchronizedAt pgtype.Timestamptz
}

type PullRequestCommit

type PullRequestCommit struct {
	PrID           int64
	Sha            string
	Position       int32
	AuthorName     string
	AuthorEmail    string
	CommitterName  string
	CommitterEmail string
	Subject        string
	Body           string
	AuthoredAt     pgtype.Timestamptz
	CommittedAt    pgtype.Timestamptz
}

type PullRequestFile

type PullRequestFile struct {
	PrID      int64
	Path      string
	Status    PrFileStatus
	OldPath   pgtype.Text
	Additions int32
	Deletions int32
	Changes   int32
}

type PushEvent

type PushEvent struct {
	ID           int64
	RepoID       int64
	PusherUserID pgtype.Int8
	BeforeSha    string
	AfterSha     string
	Ref          string
	Protocol     string
	RequestID    string
	ProcessedAt  pgtype.Timestamptz
	CreatedAt    pgtype.Timestamptz
}

type Querier

type Querier interface {
	AcceptOrgInvitation(ctx context.Context, db DBTX, id int64) error
	// SPDX-License-Identifier: AGPL-3.0-or-later
	// ─── org_members ───────────────────────────────────────────────────
	// Idempotent on (org_id, user_id): re-adding a member is a no-op
	// rather than an error. The role is taken from the supplied row when
	// the member is new; existing rows keep their current role (use
	// ChangeOrgMemberRole to update).
	AddOrgMember(ctx context.Context, db DBTX, arg AddOrgMemberParams) error
	// ─── team_members ─────────────────────────────────────────────────
	AddTeamMember(ctx context.Context, db DBTX, arg AddTeamMemberParams) error
	CancelOrgInvitation(ctx context.Context, db DBTX, id int64) error
	ChangeOrgMemberRole(ctx context.Context, db DBTX, arg ChangeOrgMemberRoleParams) error
	// Used by the last-owner protection: refuses to remove or demote the
	// only owner. Caller compares `count = 1` before allowing the change.
	CountOrgOwners(ctx context.Context, db DBTX, orgID int64) (int64, error)
	// SPDX-License-Identifier: AGPL-3.0-or-later
	// ─── orgs ──────────────────────────────────────────────────────────
	// Inserts a new org. The trigger on `orgs` populates `principals` for
	// /{slug} resolution; the caller adds the creator as owner in the same
	// tx (separate query so the orchestrator owns ordering).
	CreateOrg(ctx context.Context, db DBTX, arg CreateOrgParams) (Org, error)
	// SPDX-License-Identifier: AGPL-3.0-or-later
	// ─── org_invitations ───────────────────────────────────────────────
	CreateOrgInvitation(ctx context.Context, db DBTX, arg CreateOrgInvitationParams) (OrgInvitation, error)
	// SPDX-License-Identifier: AGPL-3.0-or-later
	// ─── teams ─────────────────────────────────────────────────────────
	CreateTeam(ctx context.Context, db DBTX, arg CreateTeamParams) (Team, error)
	DeclineOrgInvitation(ctx context.Context, db DBTX, id int64) error
	// Children's parent_team_id flips to NULL via the FK ON DELETE SET NULL,
	// promoting them to top-level — matches the "deleting parent doesn't
	// delete children" intent in the spec's pitfalls.
	DeleteTeam(ctx context.Context, db DBTX, id int64) error
	// Idempotency check before creating a new invite — so a re-issued
	// invite to the same target doesn't accumulate stale rows.
	GetExistingPendingInvitation(ctx context.Context, db DBTX, arg GetExistingPendingInvitationParams) (OrgInvitation, error)
	GetOrgByID(ctx context.Context, db DBTX, id int64) (Org, error)
	// Slug is citext so the comparison is case-insensitive. Soft-deleted
	// orgs are filtered out so a slug freed by deletion is invisible to
	// normal lookups (the resolver still sees the row via the deleted_at
	// column for grace-period restore).
	GetOrgBySlug(ctx context.Context, db DBTX, slug string) (Org, error)
	GetOrgBySlugIncludingDeleted(ctx context.Context, db DBTX, slug string) (Org, error)
	GetOrgInvitationByID(ctx context.Context, db DBTX, id int64) (OrgInvitation, error)
	GetOrgInvitationByTokenHash(ctx context.Context, db DBTX, tokenHash []byte) (OrgInvitation, error)
	GetOrgMember(ctx context.Context, db DBTX, arg GetOrgMemberParams) (OrgMember, error)
	GetTeamByID(ctx context.Context, db DBTX, id int64) (Team, error)
	GetTeamByOrgAndSlug(ctx context.Context, db DBTX, arg GetTeamByOrgAndSlugParams) (Team, error)
	GetTeamRepoAccess(ctx context.Context, db DBTX, arg GetTeamRepoAccessParams) (TeamRepoAccess, error)
	// ─── team_repo_access ─────────────────────────────────────────────
	GrantTeamRepoAccess(ctx context.Context, db DBTX, arg GrantTeamRepoAccessParams) error
	// Final row removal after the cascade finished. The principals
	// trigger drops the matching principals row in the same tx.
	HardDeleteOrgRow(ctx context.Context, db DBTX, id int64) error
	ListChildTeams(ctx context.Context, db DBTX, parentTeamID pgtype.Int8) ([]Team, error)
	// Sweep input for the lifecycle worker: every soft-deleted org whose
	// 14-day grace window has elapsed. The interval is intentionally a
	// DB literal (not a parameter) so the policy lives next to the data.
	ListOrgIDsPastSoftDeleteGrace(ctx context.Context, db DBTX) ([]int64, error)
	// Members of an org with usernames + roles for the people page.
	ListOrgMembers(ctx context.Context, db DBTX, orgID int64) ([]ListOrgMembersRow, error)
	// All repo IDs (including soft-deleted) belonging to an org. Used by
	// the org hard-delete cascade to fan out per-repo destruction.
	ListOrgRepoIDs(ctx context.Context, db DBTX, ownerOrgID pgtype.Int8) ([]int64, error)
	// Profile-page input: every org a user is a member of, with role.
	ListOrgsForUser(ctx context.Context, db DBTX, userID int64) ([]ListOrgsForUserRow, error)
	ListPendingInvitationsForEmail(ctx context.Context, db DBTX, targetEmail pgtype.Text) ([]ListPendingInvitationsForEmailRow, error)
	ListPendingInvitationsForOrg(ctx context.Context, db DBTX, orgID int64) ([]ListPendingInvitationsForOrgRow, error)
	// Two flavors: by user_id (already-claimed invites) and by email
	// (claim-on-signup). Caller unions the two lookups when surfacing
	// to the user.
	ListPendingInvitationsForUser(ctx context.Context, db DBTX, targetUserID pgtype.Int8) ([]ListPendingInvitationsForUserRow, error)
	// All teams with grants on a single repo; for repo settings/access page.
	ListRepoTeamGrants(ctx context.Context, db DBTX, repoID int64) ([]ListRepoTeamGrantsRow, error)
	// Policy hot-path: given a repo and a set of team_ids the actor
	// belongs to (incl. inherited), return the access rows. Caller picks
	// the highest role.
	ListTeamAccessForRepoAndTeams(ctx context.Context, db DBTX, arg ListTeamAccessForRepoAndTeamsParams) ([]ListTeamAccessForRepoAndTeamsRow, error)
	ListTeamMembers(ctx context.Context, db DBTX, teamID int64) ([]ListTeamMembersRow, error)
	// All repos the team has any grant on; for the team-view page.
	ListTeamRepoAccess(ctx context.Context, db DBTX, teamID int64) ([]ListTeamRepoAccessRow, error)
	ListTeamsForOrg(ctx context.Context, db DBTX, orgID int64) ([]Team, error)
	// Returns the teams a user directly belongs to within an org. The
	// policy aggregator unions this with each row's parent_team_id to
	// get the inherited set.
	ListTeamsForUserInOrg(ctx context.Context, db DBTX, arg ListTeamsForUserInOrgParams) ([]ListTeamsForUserInOrgRow, error)
	RemoveOrgMember(ctx context.Context, db DBTX, arg RemoveOrgMemberParams) error
	RemoveTeamMember(ctx context.Context, db DBTX, arg RemoveTeamMemberParams) error
	// ─── principals (read-only from this domain) ───────────────────────
	// Single-query /{slug} resolver. Returns the (kind, id) tuple that
	// /{slug}/* routes use to dispatch to the user-profile or org-profile
	// handler. Both kinds share the slug PK so collisions are
	// impossible at the DB layer.
	ResolvePrincipal(ctx context.Context, db DBTX, slug string) (Principal, error)
	RestoreOrg(ctx context.Context, db DBTX, id int64) error
	RevokeTeamRepoAccess(ctx context.Context, db DBTX, arg RevokeTeamRepoAccessParams) error
	SetOrgAllowMemberRepoCreate(ctx context.Context, db DBTX, arg SetOrgAllowMemberRepoCreateParams) error
	SetOrgAvatarKey(ctx context.Context, db DBTX, arg SetOrgAvatarKeyParams) error
	SetOrgSuspended(ctx context.Context, db DBTX, arg SetOrgSuspendedParams) error
	SetTeamMemberRole(ctx context.Context, db DBTX, arg SetTeamMemberRoleParams) error
	// The one-level-nesting BEFORE trigger blocks invalid moves; the
	// caller surfaces the SQLSTATE 23514 as a friendly error.
	SetTeamParent(ctx context.Context, db DBTX, arg SetTeamParentParams) error
	SoftDeleteOrg(ctx context.Context, db DBTX, id int64) error
	UpdateOrgProfile(ctx context.Context, db DBTX, arg UpdateOrgProfileParams) error
	UpdateTeamProfile(ctx context.Context, db DBTX, arg UpdateTeamProfileParams) error
}

type Queries

type Queries struct {
}

func New

func New() *Queries

func (*Queries) AcceptOrgInvitation

func (q *Queries) AcceptOrgInvitation(ctx context.Context, db DBTX, id int64) error

func (*Queries) AddOrgMember

func (q *Queries) AddOrgMember(ctx context.Context, db DBTX, arg AddOrgMemberParams) error

SPDX-License-Identifier: AGPL-3.0-or-later ─── org_members ─────────────────────────────────────────────────── Idempotent on (org_id, user_id): re-adding a member is a no-op rather than an error. The role is taken from the supplied row when the member is new; existing rows keep their current role (use ChangeOrgMemberRole to update).

func (*Queries) AddTeamMember

func (q *Queries) AddTeamMember(ctx context.Context, db DBTX, arg AddTeamMemberParams) error

─── team_members ─────────────────────────────────────────────────

func (*Queries) CancelOrgInvitation

func (q *Queries) CancelOrgInvitation(ctx context.Context, db DBTX, id int64) error

func (*Queries) ChangeOrgMemberRole

func (q *Queries) ChangeOrgMemberRole(ctx context.Context, db DBTX, arg ChangeOrgMemberRoleParams) error

func (*Queries) CountOrgOwners

func (q *Queries) CountOrgOwners(ctx context.Context, db DBTX, orgID int64) (int64, error)

Used by the last-owner protection: refuses to remove or demote the only owner. Caller compares `count = 1` before allowing the change.

func (*Queries) CreateOrg

func (q *Queries) CreateOrg(ctx context.Context, db DBTX, arg CreateOrgParams) (Org, error)

SPDX-License-Identifier: AGPL-3.0-or-later ─── orgs ────────────────────────────────────────────────────────── Inserts a new org. The trigger on `orgs` populates `principals` for /{slug} resolution; the caller adds the creator as owner in the same tx (separate query so the orchestrator owns ordering).

func (*Queries) CreateOrgInvitation

func (q *Queries) CreateOrgInvitation(ctx context.Context, db DBTX, arg CreateOrgInvitationParams) (OrgInvitation, error)

SPDX-License-Identifier: AGPL-3.0-or-later ─── org_invitations ───────────────────────────────────────────────

func (*Queries) CreateTeam

func (q *Queries) CreateTeam(ctx context.Context, db DBTX, arg CreateTeamParams) (Team, error)

SPDX-License-Identifier: AGPL-3.0-or-later ─── teams ─────────────────────────────────────────────────────────

func (*Queries) DeclineOrgInvitation

func (q *Queries) DeclineOrgInvitation(ctx context.Context, db DBTX, id int64) error

func (*Queries) DeleteTeam

func (q *Queries) DeleteTeam(ctx context.Context, db DBTX, id int64) error

Children's parent_team_id flips to NULL via the FK ON DELETE SET NULL, promoting them to top-level — matches the "deleting parent doesn't delete children" intent in the spec's pitfalls.

func (*Queries) GetExistingPendingInvitation

func (q *Queries) GetExistingPendingInvitation(ctx context.Context, db DBTX, arg GetExistingPendingInvitationParams) (OrgInvitation, error)

Idempotency check before creating a new invite — so a re-issued invite to the same target doesn't accumulate stale rows.

func (*Queries) GetOrgByID

func (q *Queries) GetOrgByID(ctx context.Context, db DBTX, id int64) (Org, error)

func (*Queries) GetOrgBySlug

func (q *Queries) GetOrgBySlug(ctx context.Context, db DBTX, slug string) (Org, error)

Slug is citext so the comparison is case-insensitive. Soft-deleted orgs are filtered out so a slug freed by deletion is invisible to normal lookups (the resolver still sees the row via the deleted_at column for grace-period restore).

func (*Queries) GetOrgBySlugIncludingDeleted

func (q *Queries) GetOrgBySlugIncludingDeleted(ctx context.Context, db DBTX, slug string) (Org, error)

func (*Queries) GetOrgInvitationByID

func (q *Queries) GetOrgInvitationByID(ctx context.Context, db DBTX, id int64) (OrgInvitation, error)

func (*Queries) GetOrgInvitationByTokenHash

func (q *Queries) GetOrgInvitationByTokenHash(ctx context.Context, db DBTX, tokenHash []byte) (OrgInvitation, error)

func (*Queries) GetOrgMember

func (q *Queries) GetOrgMember(ctx context.Context, db DBTX, arg GetOrgMemberParams) (OrgMember, error)

func (*Queries) GetTeamByID

func (q *Queries) GetTeamByID(ctx context.Context, db DBTX, id int64) (Team, error)

func (*Queries) GetTeamByOrgAndSlug

func (q *Queries) GetTeamByOrgAndSlug(ctx context.Context, db DBTX, arg GetTeamByOrgAndSlugParams) (Team, error)

func (*Queries) GetTeamRepoAccess

func (q *Queries) GetTeamRepoAccess(ctx context.Context, db DBTX, arg GetTeamRepoAccessParams) (TeamRepoAccess, error)

func (*Queries) GrantTeamRepoAccess

func (q *Queries) GrantTeamRepoAccess(ctx context.Context, db DBTX, arg GrantTeamRepoAccessParams) error

─── team_repo_access ─────────────────────────────────────────────

func (*Queries) HardDeleteOrgRow

func (q *Queries) HardDeleteOrgRow(ctx context.Context, db DBTX, id int64) error

Final row removal after the cascade finished. The principals trigger drops the matching principals row in the same tx.

func (*Queries) ListChildTeams

func (q *Queries) ListChildTeams(ctx context.Context, db DBTX, parentTeamID pgtype.Int8) ([]Team, error)

func (*Queries) ListOrgIDsPastSoftDeleteGrace

func (q *Queries) ListOrgIDsPastSoftDeleteGrace(ctx context.Context, db DBTX) ([]int64, error)

Sweep input for the lifecycle worker: every soft-deleted org whose 14-day grace window has elapsed. The interval is intentionally a DB literal (not a parameter) so the policy lives next to the data.

func (*Queries) ListOrgMembers

func (q *Queries) ListOrgMembers(ctx context.Context, db DBTX, orgID int64) ([]ListOrgMembersRow, error)

Members of an org with usernames + roles for the people page.

func (*Queries) ListOrgRepoIDs

func (q *Queries) ListOrgRepoIDs(ctx context.Context, db DBTX, ownerOrgID pgtype.Int8) ([]int64, error)

All repo IDs (including soft-deleted) belonging to an org. Used by the org hard-delete cascade to fan out per-repo destruction.

func (*Queries) ListOrgsForUser

func (q *Queries) ListOrgsForUser(ctx context.Context, db DBTX, userID int64) ([]ListOrgsForUserRow, error)

Profile-page input: every org a user is a member of, with role.

func (*Queries) ListPendingInvitationsForEmail

func (q *Queries) ListPendingInvitationsForEmail(ctx context.Context, db DBTX, targetEmail pgtype.Text) ([]ListPendingInvitationsForEmailRow, error)

func (*Queries) ListPendingInvitationsForOrg

func (q *Queries) ListPendingInvitationsForOrg(ctx context.Context, db DBTX, orgID int64) ([]ListPendingInvitationsForOrgRow, error)

func (*Queries) ListPendingInvitationsForUser

func (q *Queries) ListPendingInvitationsForUser(ctx context.Context, db DBTX, targetUserID pgtype.Int8) ([]ListPendingInvitationsForUserRow, error)

Two flavors: by user_id (already-claimed invites) and by email (claim-on-signup). Caller unions the two lookups when surfacing to the user.

func (*Queries) ListRepoTeamGrants

func (q *Queries) ListRepoTeamGrants(ctx context.Context, db DBTX, repoID int64) ([]ListRepoTeamGrantsRow, error)

All teams with grants on a single repo; for repo settings/access page.

func (*Queries) ListTeamAccessForRepoAndTeams

func (q *Queries) ListTeamAccessForRepoAndTeams(ctx context.Context, db DBTX, arg ListTeamAccessForRepoAndTeamsParams) ([]ListTeamAccessForRepoAndTeamsRow, error)

Policy hot-path: given a repo and a set of team_ids the actor belongs to (incl. inherited), return the access rows. Caller picks the highest role.

func (*Queries) ListTeamMembers

func (q *Queries) ListTeamMembers(ctx context.Context, db DBTX, teamID int64) ([]ListTeamMembersRow, error)

func (*Queries) ListTeamRepoAccess

func (q *Queries) ListTeamRepoAccess(ctx context.Context, db DBTX, teamID int64) ([]ListTeamRepoAccessRow, error)

All repos the team has any grant on; for the team-view page.

func (*Queries) ListTeamsForOrg

func (q *Queries) ListTeamsForOrg(ctx context.Context, db DBTX, orgID int64) ([]Team, error)

func (*Queries) ListTeamsForUserInOrg

func (q *Queries) ListTeamsForUserInOrg(ctx context.Context, db DBTX, arg ListTeamsForUserInOrgParams) ([]ListTeamsForUserInOrgRow, error)

Returns the teams a user directly belongs to within an org. The policy aggregator unions this with each row's parent_team_id to get the inherited set.

func (*Queries) RemoveOrgMember

func (q *Queries) RemoveOrgMember(ctx context.Context, db DBTX, arg RemoveOrgMemberParams) error

func (*Queries) RemoveTeamMember

func (q *Queries) RemoveTeamMember(ctx context.Context, db DBTX, arg RemoveTeamMemberParams) error

func (*Queries) ResolvePrincipal

func (q *Queries) ResolvePrincipal(ctx context.Context, db DBTX, slug string) (Principal, error)

─── principals (read-only from this domain) ─────────────────────── Single-query /{slug} resolver. Returns the (kind, id) tuple that /{slug}/* routes use to dispatch to the user-profile or org-profile handler. Both kinds share the slug PK so collisions are impossible at the DB layer.

func (*Queries) RestoreOrg

func (q *Queries) RestoreOrg(ctx context.Context, db DBTX, id int64) error

func (*Queries) RevokeTeamRepoAccess

func (q *Queries) RevokeTeamRepoAccess(ctx context.Context, db DBTX, arg RevokeTeamRepoAccessParams) error

func (*Queries) SetOrgAllowMemberRepoCreate

func (q *Queries) SetOrgAllowMemberRepoCreate(ctx context.Context, db DBTX, arg SetOrgAllowMemberRepoCreateParams) error

func (*Queries) SetOrgAvatarKey

func (q *Queries) SetOrgAvatarKey(ctx context.Context, db DBTX, arg SetOrgAvatarKeyParams) error

func (*Queries) SetOrgSuspended

func (q *Queries) SetOrgSuspended(ctx context.Context, db DBTX, arg SetOrgSuspendedParams) error

func (*Queries) SetTeamMemberRole

func (q *Queries) SetTeamMemberRole(ctx context.Context, db DBTX, arg SetTeamMemberRoleParams) error

func (*Queries) SetTeamParent

func (q *Queries) SetTeamParent(ctx context.Context, db DBTX, arg SetTeamParentParams) error

The one-level-nesting BEFORE trigger blocks invalid moves; the caller surfaces the SQLSTATE 23514 as a friendly error.

func (*Queries) SoftDeleteOrg

func (q *Queries) SoftDeleteOrg(ctx context.Context, db DBTX, id int64) error

func (*Queries) UpdateOrgProfile

func (q *Queries) UpdateOrgProfile(ctx context.Context, db DBTX, arg UpdateOrgProfileParams) error

func (*Queries) UpdateTeamProfile

func (q *Queries) UpdateTeamProfile(ctx context.Context, db DBTX, arg UpdateTeamProfileParams) error

type RateLimit

type RateLimit struct {
	Scope           string
	Key             string
	Hits            int32
	WindowStartedAt pgtype.Timestamptz
}

type RemoveOrgMemberParams

type RemoveOrgMemberParams struct {
	OrgID  int64
	UserID int64
}

type RemoveTeamMemberParams

type RemoveTeamMemberParams struct {
	TeamID int64
	UserID int64
}

type Repo

type Repo struct {
	ID                 int64
	OwnerUserID        pgtype.Int8
	OwnerOrgID         pgtype.Int8
	Name               string
	Description        string
	Visibility         RepoVisibility
	DefaultBranch      string
	IsArchived         bool
	ArchivedAt         pgtype.Timestamptz
	DeletedAt          pgtype.Timestamptz
	DiskUsedBytes      int64
	ForkOfRepoID       pgtype.Int8
	LicenseKey         pgtype.Text
	PrimaryLanguage    pgtype.Text
	HasIssues          bool
	HasPulls           bool
	CreatedAt          pgtype.Timestamptz
	UpdatedAt          pgtype.Timestamptz
	DefaultBranchOid   pgtype.Text
	AllowSquashMerge   bool
	AllowRebaseMerge   bool
	AllowMergeCommit   bool
	DefaultMergeMethod PrMergeMethod
	StarCount          int64
	WatcherCount       int64
	ForkCount          int64
	InitStatus         RepoInitStatus
	LastIndexedOid     pgtype.Text
}

type RepoCollaborator

type RepoCollaborator struct {
	RepoID        int64
	UserID        int64
	Role          CollabRole
	AddedAt       pgtype.Timestamptz
	AddedByUserID pgtype.Int8
}

type RepoInitStatus

type RepoInitStatus string
const (
	RepoInitStatusInitialized RepoInitStatus = "initialized"
	RepoInitStatusInitPending RepoInitStatus = "init_pending"
	RepoInitStatusInitFailed  RepoInitStatus = "init_failed"
)

func (*RepoInitStatus) Scan

func (e *RepoInitStatus) Scan(src interface{}) error

type RepoIssueCounter

type RepoIssueCounter struct {
	RepoID     int64
	NextNumber int64
}

type RepoRedirect

type RepoRedirect struct {
	OldOwnerUserID pgtype.Int8
	OldOwnerOrgID  pgtype.Int8
	OldName        string
	RepoID         int64
	RedirectedAt   pgtype.Timestamptz
}

type RepoTopic

type RepoTopic struct {
	RepoID    int64
	Topic     string
	CreatedAt pgtype.Timestamptz
}

type RepoTransferRequest

type RepoTransferRequest struct {
	ID              int64
	RepoID          int64
	FromUserID      int64
	ToPrincipalKind TransferPrincipalKind
	ToPrincipalID   int64
	CreatedBy       int64
	CreatedAt       pgtype.Timestamptz
	ExpiresAt       pgtype.Timestamptz
	Status          TransferStatus
	AcceptedAt      pgtype.Timestamptz
	DeclinedAt      pgtype.Timestamptz
	CanceledAt      pgtype.Timestamptz
}

type RepoVisibility

type RepoVisibility string
const (
	RepoVisibilityPublic  RepoVisibility = "public"
	RepoVisibilityPrivate RepoVisibility = "private"
)

func (*RepoVisibility) Scan

func (e *RepoVisibility) Scan(src interface{}) error

type ReposSearch

type ReposSearch struct {
	RepoID int64
	Tsv    interface{}
}

type RevokeTeamRepoAccessParams

type RevokeTeamRepoAccessParams struct {
	TeamID int64
	RepoID int64
}

type SetOrgAllowMemberRepoCreateParams

type SetOrgAllowMemberRepoCreateParams struct {
	ID                    int64
	AllowMemberRepoCreate bool
}

type SetOrgAvatarKeyParams

type SetOrgAvatarKeyParams struct {
	ID              int64
	AvatarObjectKey pgtype.Text
}

type SetOrgSuspendedParams

type SetOrgSuspendedParams struct {
	ID              int64
	Column2         bool
	SuspendedReason pgtype.Text
}

type SetTeamMemberRoleParams

type SetTeamMemberRoleParams struct {
	TeamID int64
	UserID int64
	Role   TeamRole
}

type SetTeamParentParams

type SetTeamParentParams struct {
	ID           int64
	ParentTeamID pgtype.Int8
}

type SignupIpThrottle

type SignupIpThrottle struct {
	Cidr            netip.Addr
	Hits            int32
	WindowStartedAt pgtype.Timestamptz
}

type Star

type Star struct {
	UserID    int64
	RepoID    int64
	StarredAt pgtype.Timestamptz
}

type Team

type Team struct {
	ID              int64
	OrgID           int64
	Slug            string
	DisplayName     string
	Description     string
	ParentTeamID    pgtype.Int8
	Privacy         TeamPrivacy
	CreatedByUserID pgtype.Int8
	CreatedAt       pgtype.Timestamptz
	UpdatedAt       pgtype.Timestamptz
}

type TeamMember

type TeamMember struct {
	TeamID        int64
	UserID        int64
	Role          TeamRole
	AddedByUserID pgtype.Int8
	AddedAt       pgtype.Timestamptz
}

type TeamPrivacy

type TeamPrivacy string
const (
	TeamPrivacyVisible TeamPrivacy = "visible"
	TeamPrivacySecret  TeamPrivacy = "secret"
)

func (*TeamPrivacy) Scan

func (e *TeamPrivacy) Scan(src interface{}) error

type TeamRepoAccess

type TeamRepoAccess struct {
	TeamID        int64
	RepoID        int64
	Role          TeamRepoRole
	AddedByUserID pgtype.Int8
	AddedAt       pgtype.Timestamptz
}

type TeamRepoRole

type TeamRepoRole string
const (
	TeamRepoRoleRead     TeamRepoRole = "read"
	TeamRepoRoleTriage   TeamRepoRole = "triage"
	TeamRepoRoleWrite    TeamRepoRole = "write"
	TeamRepoRoleMaintain TeamRepoRole = "maintain"
	TeamRepoRoleAdmin    TeamRepoRole = "admin"
)

func (*TeamRepoRole) Scan

func (e *TeamRepoRole) Scan(src interface{}) error

type TeamRole

type TeamRole string
const (
	TeamRoleMember     TeamRole = "member"
	TeamRoleMaintainer TeamRole = "maintainer"
)

func (*TeamRole) Scan

func (e *TeamRole) Scan(src interface{}) error

type TransactionalEmailLog

type TransactionalEmailLog struct {
	ID              int64
	RecipientUserID pgtype.Int8
	RecipientEmail  string
	Kind            string
	Subject         string
	ProviderID      string
	Status          TransactionalEmailStatus
	ErrorSummary    pgtype.Text
	SentAt          pgtype.Timestamptz
	DeliveredAt     pgtype.Timestamptz
}

type TransactionalEmailStatus

type TransactionalEmailStatus string
const (
	TransactionalEmailStatusQueued      TransactionalEmailStatus = "queued"
	TransactionalEmailStatusSent        TransactionalEmailStatus = "sent"
	TransactionalEmailStatusSoftBounced TransactionalEmailStatus = "soft_bounced"
	TransactionalEmailStatusHardBounced TransactionalEmailStatus = "hard_bounced"
	TransactionalEmailStatusDropped     TransactionalEmailStatus = "dropped"
)

func (*TransactionalEmailStatus) Scan

func (e *TransactionalEmailStatus) Scan(src interface{}) error

type TransferPrincipalKind

type TransferPrincipalKind string
const (
	TransferPrincipalKindUser TransferPrincipalKind = "user"
	TransferPrincipalKindOrg  TransferPrincipalKind = "org"
)

func (*TransferPrincipalKind) Scan

func (e *TransferPrincipalKind) Scan(src interface{}) error

type TransferStatus

type TransferStatus string
const (
	TransferStatusPending  TransferStatus = "pending"
	TransferStatusAccepted TransferStatus = "accepted"
	TransferStatusDeclined TransferStatus = "declined"
	TransferStatusCanceled TransferStatus = "canceled"
	TransferStatusExpired  TransferStatus = "expired"
)

func (*TransferStatus) Scan

func (e *TransferStatus) Scan(src interface{}) error

type UpdateOrgProfileParams

type UpdateOrgProfileParams struct {
	ID           int64
	DisplayName  string
	Description  string
	Location     string
	Website      string
	BillingEmail string
}

type UpdateTeamProfileParams

type UpdateTeamProfileParams struct {
	ID          int64
	DisplayName string
	Description string
	Privacy     TeamPrivacy
}

type User

type User struct {
	ID                int64
	Username          string
	DisplayName       string
	PrimaryEmailID    pgtype.Int8
	PasswordHash      string
	PasswordAlgo      string
	PasswordUpdatedAt pgtype.Timestamptz
	EmailVerified     bool
	LastLoginAt       pgtype.Timestamptz
	SuspendedAt       pgtype.Timestamptz
	SuspendedReason   pgtype.Text
	DeletedAt         pgtype.Timestamptz
	CreatedAt         pgtype.Timestamptz
	UpdatedAt         pgtype.Timestamptz
	Bio               string
	Location          string
	Website           string
	Company           string
	Pronouns          string
	AvatarObjectKey   pgtype.Text
	Theme             string
	SessionEpoch      int32
	IsSiteAdmin       bool
}

type UserEmail

type UserEmail struct {
	ID                    int64
	UserID                int64
	Email                 string
	IsPrimary             bool
	Verified              bool
	VerificationTokenHash []byte
	VerificationSentAt    pgtype.Timestamptz
	VerifiedAt            pgtype.Timestamptz
	CreatedAt             pgtype.Timestamptz
}

type UserNotificationPref

type UserNotificationPref struct {
	UserID    int64
	Key       string
	Value     []byte
	UpdatedAt pgtype.Timestamptz
}

type UserRecoveryCode

type UserRecoveryCode struct {
	ID          int64
	UserID      int64
	CodeHash    []byte
	UsedAt      pgtype.Timestamptz
	GeneratedAt pgtype.Timestamptz
	CreatedAt   pgtype.Timestamptz
}

type UserSshKey

type UserSshKey struct {
	ID                int64
	UserID            int64
	Title             string
	FingerprintSha256 string
	KeyType           string
	KeyBits           int32
	PublicKey         string
	LastUsedAt        pgtype.Timestamptz
	LastUsedIp        *netip.Addr
	CreatedAt         pgtype.Timestamptz
}

type UserToken

type UserToken struct {
	ID          int64
	UserID      int64
	Name        string
	TokenHash   []byte
	TokenPrefix string
	Scopes      []string
	ExpiresAt   pgtype.Timestamptz
	LastUsedAt  pgtype.Timestamptz
	LastUsedIp  *netip.Addr
	RevokedAt   pgtype.Timestamptz
	CreatedAt   pgtype.Timestamptz
}

type UserTotp

type UserTotp struct {
	ID              int64
	UserID          int64
	SecretEncrypted []byte
	SecretNonce     []byte
	ConfirmedAt     pgtype.Timestamptz
	LastUsedCounter int64
	CreatedAt       pgtype.Timestamptz
	UpdatedAt       pgtype.Timestamptz
}

type UsernameRedirect

type UsernameRedirect struct {
	OldUsername string
	UserID      int64
	ChangedAt   pgtype.Timestamptz
}

type UsersSearch

type UsersSearch struct {
	UserID int64
	Tsv    interface{}
}

type Watch

type Watch struct {
	UserID    int64
	RepoID    int64
	Level     WatchLevel
	UpdatedAt pgtype.Timestamptz
}

type WatchLevel

type WatchLevel string
const (
	WatchLevelAll           WatchLevel = "all"
	WatchLevelParticipating WatchLevel = "participating"
	WatchLevelIgnore        WatchLevel = "ignore"
)

func (*WatchLevel) Scan

func (e *WatchLevel) Scan(src interface{}) error

type Webhook

type Webhook struct {
	ID                   int64
	OwnerKind            WebhookOwnerKind
	OwnerID              int64
	Url                  string
	ContentType          WebhookContentType
	Events               []string
	SecretCiphertext     []byte
	SecretNonce          []byte
	Active               bool
	SslVerification      bool
	ConsecutiveFailures  int32
	AutoDisableThreshold int32
	DisabledAt           pgtype.Timestamptz
	DisabledReason       pgtype.Text
	LastSuccessAt        pgtype.Timestamptz
	LastFailureAt        pgtype.Timestamptz
	CreatedByUserID      pgtype.Int8
	CreatedAt            pgtype.Timestamptz
	UpdatedAt            pgtype.Timestamptz
}

type WebhookContentType

type WebhookContentType string
const (
	WebhookContentTypeJson WebhookContentType = "json"
	WebhookContentTypeForm WebhookContentType = "form"
)

func (*WebhookContentType) Scan

func (e *WebhookContentType) Scan(src interface{}) error

type WebhookDelivery

type WebhookDelivery struct {
	ID                int64
	WebhookID         int64
	EventKind         string
	EventID           pgtype.Int8
	DeliveryUuid      pgtype.UUID
	Payload           []byte
	RequestHeaders    []byte
	RequestBody       []byte
	ResponseStatus    pgtype.Int4
	ResponseHeaders   []byte
	ResponseBody      []byte
	ResponseTruncated bool
	StartedAt         pgtype.Timestamptz
	CompletedAt       pgtype.Timestamptz
	Attempt           int32
	MaxAttempts       int32
	NextRetryAt       pgtype.Timestamptz
	Status            WebhookDeliveryStatus
	IdempotencyKey    string
	ErrorSummary      pgtype.Text
	RedeliverOf       pgtype.Int8
}

type WebhookDeliveryStatus

type WebhookDeliveryStatus string
const (
	WebhookDeliveryStatusPending         WebhookDeliveryStatus = "pending"
	WebhookDeliveryStatusSucceeded       WebhookDeliveryStatus = "succeeded"
	WebhookDeliveryStatusFailedRetry     WebhookDeliveryStatus = "failed_retry"
	WebhookDeliveryStatusFailedPermanent WebhookDeliveryStatus = "failed_permanent"
)

func (*WebhookDeliveryStatus) Scan

func (e *WebhookDeliveryStatus) Scan(src interface{}) error

type WebhookEventsPending

type WebhookEventsPending struct {
	ID        int64
	RepoID    int64
	EventKind string
	Payload   []byte
	CreatedAt pgtype.Timestamptz
}

type WebhookOwnerKind

type WebhookOwnerKind string
const (
	WebhookOwnerKindRepo WebhookOwnerKind = "repo"
	WebhookOwnerKindOrg  WebhookOwnerKind = "org"
)

func (*WebhookOwnerKind) Scan

func (e *WebhookOwnerKind) Scan(src interface{}) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL