// Code generated by sqlc. DO NOT EDIT. // versions: // sqlc v1.31.1 package usersqlc import ( "net/netip" "github.com/jackc/pgx/v5/pgtype" ) type AcpAgentKind struct { ID pgtype.UUID `json:"id"` Name string `json:"name"` DisplayName string `json:"display_name"` Description string `json:"description"` BinaryPath string `json:"binary_path"` Args []string `json:"args"` EncryptedEnv []byte `json:"encrypted_env"` Enabled bool `json:"enabled"` CreatedBy pgtype.UUID `json:"created_by"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` ToolAllowlist []string `json:"tool_allowlist"` ClientType string `json:"client_type"` EncryptedMcpServers []byte `json:"encrypted_mcp_servers"` } type AcpAgentKindConfigFile struct { ID pgtype.UUID `json:"id"` AgentKindID pgtype.UUID `json:"agent_kind_id"` RelPath string `json:"rel_path"` EncryptedContent []byte `json:"encrypted_content"` UpdatedBy pgtype.UUID `json:"updated_by"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` } type AcpEvent struct { ID int64 `json:"id"` SessionID pgtype.UUID `json:"session_id"` Direction string `json:"direction"` RpcKind string `json:"rpc_kind"` Method *string `json:"method"` Payload []byte `json:"payload"` PayloadSize int32 `json:"payload_size"` Truncated bool `json:"truncated"` CreatedAt pgtype.Timestamptz `json:"created_at"` } type AcpPermissionRequest struct { ID pgtype.UUID `json:"id"` SessionID pgtype.UUID `json:"session_id"` AgentRequestID string `json:"agent_request_id"` ToolName string `json:"tool_name"` ToolCall []byte `json:"tool_call"` Options []byte `json:"options"` Status string `json:"status"` ChosenOptionID *string `json:"chosen_option_id"` DecidedBy pgtype.UUID `json:"decided_by"` DecidedAt pgtype.Timestamptz `json:"decided_at"` CreatedAt pgtype.Timestamptz `json:"created_at"` } type AcpSession struct { ID pgtype.UUID `json:"id"` WorkspaceID pgtype.UUID `json:"workspace_id"` ProjectID pgtype.UUID `json:"project_id"` AgentKindID pgtype.UUID `json:"agent_kind_id"` UserID pgtype.UUID `json:"user_id"` IssueID pgtype.UUID `json:"issue_id"` RequirementID pgtype.UUID `json:"requirement_id"` AgentSessionID *string `json:"agent_session_id"` Branch string `json:"branch"` CwdPath string `json:"cwd_path"` IsMainWorktree bool `json:"is_main_worktree"` Status string `json:"status"` Pid *int32 `json:"pid"` ExitCode *int32 `json:"exit_code"` LastError *string `json:"last_error"` StartedAt pgtype.Timestamptz `json:"started_at"` EndedAt pgtype.Timestamptz `json:"ended_at"` } type AuditLog struct { ID int64 `json:"id"` UserID pgtype.UUID `json:"user_id"` Action string `json:"action"` TargetType *string `json:"target_type"` TargetID *string `json:"target_id"` Ip *netip.Addr `json:"ip"` Metadata []byte `json:"metadata"` CreatedAt pgtype.Timestamptz `json:"created_at"` } type Conversation struct { ID pgtype.UUID `json:"id"` UserID pgtype.UUID `json:"user_id"` ProjectID pgtype.UUID `json:"project_id"` WorkspaceID pgtype.UUID `json:"workspace_id"` IssueID pgtype.UUID `json:"issue_id"` ModelID pgtype.UUID `json:"model_id"` SystemPrompt string `json:"system_prompt"` Title *string `json:"title"` TitleGeneratedAt pgtype.Timestamptz `json:"title_generated_at"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` DeletedAt pgtype.Timestamptz `json:"deleted_at"` RequirementID pgtype.UUID `json:"requirement_id"` } type GitCredential struct { ID pgtype.UUID `json:"id"` WorkspaceID pgtype.UUID `json:"workspace_id"` Kind string `json:"kind"` Username *string `json:"username"` EncryptedSecret []byte `json:"encrypted_secret"` Fingerprint *string `json:"fingerprint"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` } type Issue struct { ID pgtype.UUID `json:"id"` ProjectID pgtype.UUID `json:"project_id"` RequirementID pgtype.UUID `json:"requirement_id"` Number int32 `json:"number"` Title string `json:"title"` Description string `json:"description"` Status string `json:"status"` AssigneeID pgtype.UUID `json:"assignee_id"` CreatedBy pgtype.UUID `json:"created_by"` ClosedAt pgtype.Timestamptz `json:"closed_at"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` WorkspaceID pgtype.UUID `json:"workspace_id"` } type Job struct { ID pgtype.UUID `json:"id"` Type string `json:"type"` Payload []byte `json:"payload"` Status string `json:"status"` ScheduledAt pgtype.Timestamptz `json:"scheduled_at"` Attempts int32 `json:"attempts"` MaxAttempts int32 `json:"max_attempts"` LeasedAt pgtype.Timestamptz `json:"leased_at"` LeasedBy *string `json:"leased_by"` LastError *string `json:"last_error"` CompletedAt pgtype.Timestamptz `json:"completed_at"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` } type LlmEndpoint struct { ID pgtype.UUID `json:"id"` Provider string `json:"provider"` DisplayName string `json:"display_name"` BaseUrl string `json:"base_url"` ApiKeyEncrypted []byte `json:"api_key_encrypted"` CreatedBy pgtype.UUID `json:"created_by"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` } type LlmModel struct { ID pgtype.UUID `json:"id"` EndpointID pgtype.UUID `json:"endpoint_id"` ModelID string `json:"model_id"` DisplayName string `json:"display_name"` Capabilities []byte `json:"capabilities"` ContextWindow int32 `json:"context_window"` MaxOutputTokens int32 `json:"max_output_tokens"` PromptPricePerMillionUsd pgtype.Numeric `json:"prompt_price_per_million_usd"` CompletionPricePerMillionUsd pgtype.Numeric `json:"completion_price_per_million_usd"` ThinkingPricePerMillionUsd pgtype.Numeric `json:"thinking_price_per_million_usd"` IsTitleGenerator bool `json:"is_title_generator"` Enabled bool `json:"enabled"` SortOrder int32 `json:"sort_order"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` } type LlmUsage struct { ID int64 `json:"id"` ConversationID pgtype.UUID `json:"conversation_id"` MessageID int64 `json:"message_id"` UserID pgtype.UUID `json:"user_id"` EndpointID pgtype.UUID `json:"endpoint_id"` ModelID pgtype.UUID `json:"model_id"` PromptTokens int32 `json:"prompt_tokens"` CompletionTokens int32 `json:"completion_tokens"` ThinkingTokens int32 `json:"thinking_tokens"` CostUsd pgtype.Numeric `json:"cost_usd"` CreatedAt pgtype.Timestamptz `json:"created_at"` } type McpToken struct { ID pgtype.UUID `json:"id"` TokenHash []byte `json:"token_hash"` UserID pgtype.UUID `json:"user_id"` Name string `json:"name"` Issuer string `json:"issuer"` Scope []byte `json:"scope"` AcpSessionID pgtype.UUID `json:"acp_session_id"` ExpiresAt pgtype.Timestamptz `json:"expires_at"` LastUsedAt pgtype.Timestamptz `json:"last_used_at"` RevokedAt pgtype.Timestamptz `json:"revoked_at"` CreatedBy pgtype.UUID `json:"created_by"` CreatedAt pgtype.Timestamptz `json:"created_at"` } type Message struct { ID int64 `json:"id"` ConversationID pgtype.UUID `json:"conversation_id"` Role string `json:"role"` Content string `json:"content"` Thinking *string `json:"thinking"` ToolCalls []byte `json:"tool_calls"` Status string `json:"status"` ErrorMessage *string `json:"error_message"` PromptTokens *int32 `json:"prompt_tokens"` CompletionTokens *int32 `json:"completion_tokens"` ThinkingTokens *int32 `json:"thinking_tokens"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` } type MessageAttachment struct { ID pgtype.UUID `json:"id"` UserID pgtype.UUID `json:"user_id"` MessageID *int64 `json:"message_id"` Filename string `json:"filename"` MimeType string `json:"mime_type"` SizeBytes int64 `json:"size_bytes"` Sha256 string `json:"sha256"` StoragePath string `json:"storage_path"` CreatedAt pgtype.Timestamptz `json:"created_at"` } type Notification struct { ID pgtype.UUID `json:"id"` UserID pgtype.UUID `json:"user_id"` Topic string `json:"topic"` Severity string `json:"severity"` Title string `json:"title"` Body string `json:"body"` Link *string `json:"link"` Metadata []byte `json:"metadata"` ReadAt pgtype.Timestamptz `json:"read_at"` CreatedAt pgtype.Timestamptz `json:"created_at"` } type Project struct { ID pgtype.UUID `json:"id"` Slug string `json:"slug"` Name string `json:"name"` Description string `json:"description"` Visibility string `json:"visibility"` OwnerID pgtype.UUID `json:"owner_id"` ArchivedAt pgtype.Timestamptz `json:"archived_at"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` } type PromptTemplate struct { ID pgtype.UUID `json:"id"` Name string `json:"name"` Content string `json:"content"` Scope string `json:"scope"` OwnerID pgtype.UUID `json:"owner_id"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` } type Requirement struct { ID pgtype.UUID `json:"id"` ProjectID pgtype.UUID `json:"project_id"` Number int32 `json:"number"` Title string `json:"title"` Description string `json:"description"` Phase string `json:"phase"` Status string `json:"status"` OwnerID pgtype.UUID `json:"owner_id"` ClosedAt pgtype.Timestamptz `json:"closed_at"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` WorkspaceID pgtype.UUID `json:"workspace_id"` } type RequirementArtifact struct { ID pgtype.UUID `json:"id"` RequirementID pgtype.UUID `json:"requirement_id"` Phase string `json:"phase"` Version int32 `json:"version"` Content string `json:"content"` Note string `json:"note"` SourceMessageID *int64 `json:"source_message_id"` CreatedBy pgtype.UUID `json:"created_by"` CreatedAt pgtype.Timestamptz `json:"created_at"` } type User struct { ID pgtype.UUID `json:"id"` Email string `json:"email"` PasswordHash string `json:"password_hash"` DisplayName string `json:"display_name"` IsAdmin bool `json:"is_admin"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` Enabled bool `json:"enabled"` } type UserSession struct { ID pgtype.UUID `json:"id"` UserID pgtype.UUID `json:"user_id"` TokenHash []byte `json:"token_hash"` ExpiresAt pgtype.Timestamptz `json:"expires_at"` LastSeenAt pgtype.Timestamptz `json:"last_seen_at"` CreatedAt pgtype.Timestamptz `json:"created_at"` } type Workspace struct { ID pgtype.UUID `json:"id"` ProjectID pgtype.UUID `json:"project_id"` Slug string `json:"slug"` Name string `json:"name"` Description string `json:"description"` GitRemoteUrl string `json:"git_remote_url"` DefaultBranch string `json:"default_branch"` MainPath string `json:"main_path"` SyncStatus string `json:"sync_status"` LastSyncedAt pgtype.Timestamptz `json:"last_synced_at"` LastSyncError *string `json:"last_sync_error"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` ActiveMainSessionID pgtype.UUID `json:"active_main_session_id"` } type WorkspaceRunProfile struct { ID pgtype.UUID `json:"id"` WorkspaceID pgtype.UUID `json:"workspace_id"` Slug string `json:"slug"` Name string `json:"name"` Description string `json:"description"` Command string `json:"command"` Args []string `json:"args"` EncryptedEnv []byte `json:"encrypted_env"` Enabled bool `json:"enabled"` LastStartedAt pgtype.Timestamptz `json:"last_started_at"` LastExitCode *int32 `json:"last_exit_code"` LastError string `json:"last_error"` CreatedBy pgtype.UUID `json:"created_by"` CreatedAt pgtype.Timestamptz `json:"created_at"` UpdatedAt pgtype.Timestamptz `json:"updated_at"` } type WorkspaceWorktree struct { ID pgtype.UUID `json:"id"` WorkspaceID pgtype.UUID `json:"workspace_id"` Branch string `json:"branch"` Path string `json:"path"` Status string `json:"status"` ActiveHolder *string `json:"active_holder"` AcquiredAt pgtype.Timestamptz `json:"acquired_at"` LastUsedAt pgtype.Timestamptz `json:"last_used_at"` CreatedAt pgtype.Timestamptz `json:"created_at"` PruneWarningAt pgtype.Timestamptz `json:"prune_warning_at"` }