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

driver_postgres

package
v0.40.0 Latest Latest
Warning

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

Go to latest
Published: Oct 14, 2026 License: Apache-2.0 Imports: 19 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type PostgresDriver

type PostgresDriver struct {
	// contains filtered or unexported fields
}

func (*PostgresDriver) Connect

func (db *PostgresDriver) Connect() error

func (*PostgresDriver) DeleteCommand

func (db *PostgresDriver) DeleteCommand(command *model.Command) error

func (*PostgresDriver) DeleteConversation

func (db *PostgresDriver) DeleteConversation(conv *model.Conversation) error

func (*PostgresDriver) DeleteEventSink

func (db *PostgresDriver) DeleteEventSink(sink *model.EventSink) error

func (*PostgresDriver) DeleteGroup

func (db *PostgresDriver) DeleteGroup(group *model.Group) error

func (*PostgresDriver) DeleteMCPServer

func (db *PostgresDriver) DeleteMCPServer(server *model.MCPServer) error

func (*PostgresDriver) DeletePoolDefinition

func (db *PostgresDriver) DeletePoolDefinition(pool *model.PoolDefinition) error

func (*PostgresDriver) DeleteResponse

func (db *PostgresDriver) DeleteResponse(response *model.Response) error

func (*PostgresDriver) DeleteRole

func (db *PostgresDriver) DeleteRole(role *model.Role) error

func (*PostgresDriver) DeleteScript

func (db *PostgresDriver) DeleteScript(script *model.Script) error

func (*PostgresDriver) DeleteSession

func (db *PostgresDriver) DeleteSession(session *model.Session) error

func (*PostgresDriver) DeleteSkill

func (db *PostgresDriver) DeleteSkill(skill *model.Skill) error

func (*PostgresDriver) DeleteSpace

func (db *PostgresDriver) DeleteSpace(space *model.Space) error

func (*PostgresDriver) DeleteStackDefinition

func (db *PostgresDriver) DeleteStackDefinition(def *model.StackDefinition) error

func (*PostgresDriver) DeleteTemplate

func (db *PostgresDriver) DeleteTemplate(template *model.Template) error

func (*PostgresDriver) DeleteTemplateVar

func (db *PostgresDriver) DeleteTemplateVar(templateVar *model.TemplateVar) error

func (*PostgresDriver) DeleteToken

func (db *PostgresDriver) DeleteToken(token *model.Token) error

func (*PostgresDriver) DeleteTombstonedConversationsBefore

func (db *PostgresDriver) DeleteTombstonedConversationsBefore(before time.Time) error

DeleteTombstonedConversationsBefore is the reaper: it hard-deletes only tombstoned conversations whose UpdatedAt predates the cutoff. updated_at stores the HLC as a BIGINT; hlc.FromTime yields the comparable threshold.

func (*PostgresDriver) DeleteUser

func (db *PostgresDriver) DeleteUser(user *model.User) error

func (*PostgresDriver) DeleteVolume

func (db *PostgresDriver) DeleteVolume(volume *model.Volume) error

func (*PostgresDriver) GetAuditLogs

func (db *PostgresDriver) GetAuditLogs(filter *model.AuditLogFilter, offset int, limit int) ([]*model.AuditLogEntry, int, error)

func (*PostgresDriver) GetAuditLogsForExport

func (db *PostgresDriver) GetAuditLogsForExport(filter *model.AuditLogFilter) ([]*model.AuditLogEntry, error)

func (*PostgresDriver) GetCfgValue

func (db *PostgresDriver) GetCfgValue(name string) (*model.CfgValue, error)

func (*PostgresDriver) GetCfgValues

func (db *PostgresDriver) GetCfgValues() ([]*model.CfgValue, error)

func (*PostgresDriver) GetCommand

func (db *PostgresDriver) GetCommand(id string) (*model.Command, error)

func (*PostgresDriver) GetCommands

func (db *PostgresDriver) GetCommands() ([]*model.Command, error)

func (*PostgresDriver) GetCommandsByName

func (db *PostgresDriver) GetCommandsByName(name string) ([]*model.Command, error)

func (*PostgresDriver) GetCommandsByNameAndUser

func (db *PostgresDriver) GetCommandsByNameAndUser(name string, userId string) ([]*model.Command, error)

func (*PostgresDriver) GetConversation

func (db *PostgresDriver) GetConversation(userId string, id string) (*model.Conversation, error)

func (*PostgresDriver) GetConversations

func (db *PostgresDriver) GetConversations() ([]*model.Conversation, error)

func (*PostgresDriver) GetConversationsByUser

func (db *PostgresDriver) GetConversationsByUser(userId string) ([]*model.Conversation, error)

func (*PostgresDriver) GetEventSink

func (db *PostgresDriver) GetEventSink(id string) (*model.EventSink, error)

func (*PostgresDriver) GetEventSinks

func (db *PostgresDriver) GetEventSinks() ([]*model.EventSink, error)

func (*PostgresDriver) GetGroup

func (db *PostgresDriver) GetGroup(id string) (*model.Group, error)

func (*PostgresDriver) GetGroups

func (db *PostgresDriver) GetGroups() ([]*model.Group, error)

func (*PostgresDriver) GetMCPServer

func (db *PostgresDriver) GetMCPServer(id string) (*model.MCPServer, error)

func (*PostgresDriver) GetMCPServers

func (db *PostgresDriver) GetMCPServers() ([]*model.MCPServer, error)

func (*PostgresDriver) GetMCPServersByUser

func (db *PostgresDriver) GetMCPServersByUser(userId string) ([]*model.MCPServer, error)

func (*PostgresDriver) GetPoolDefinition

func (db *PostgresDriver) GetPoolDefinition(id string) (*model.PoolDefinition, error)

func (*PostgresDriver) GetPoolDefinitionByName

func (db *PostgresDriver) GetPoolDefinitionByName(userId, name string) (*model.PoolDefinition, error)

func (*PostgresDriver) GetPoolDefinitions

func (db *PostgresDriver) GetPoolDefinitions() ([]*model.PoolDefinition, error)

func (*PostgresDriver) GetPoolDefinitionsByUser

func (db *PostgresDriver) GetPoolDefinitionsByUser(userId string) ([]*model.PoolDefinition, error)

GetPoolDefinitionsByUser returns the live pools owned by a user. Uses the leading column of the created_user_name unique index, so no separate index is required.

func (*PostgresDriver) GetResponse

func (db *PostgresDriver) GetResponse(id string) (*model.Response, error)

func (*PostgresDriver) GetResponses

func (db *PostgresDriver) GetResponses() ([]*model.Response, error)

func (*PostgresDriver) GetResponsesByStatus

func (db *PostgresDriver) GetResponsesByStatus(status model.ResponseStatus) ([]*model.Response, error)

func (*PostgresDriver) GetResponsesByUser

func (db *PostgresDriver) GetResponsesByUser(userId string) ([]*model.Response, error)

func (*PostgresDriver) GetRole

func (db *PostgresDriver) GetRole(id string) (*model.Role, error)

func (*PostgresDriver) GetRoles

func (db *PostgresDriver) GetRoles() ([]*model.Role, error)

func (*PostgresDriver) GetScript

func (db *PostgresDriver) GetScript(id string) (*model.Script, error)

func (*PostgresDriver) GetScriptByName

func (db *PostgresDriver) GetScriptByName(name string) (*model.Script, error)

func (*PostgresDriver) GetScriptByNameAndUser

func (db *PostgresDriver) GetScriptByNameAndUser(name string, userId string) (*model.Script, error)

GetScriptByNameAndUser gets a script by name for a specific user If userId is empty, it searches for global scripts This supports the user script override functionality

func (*PostgresDriver) GetScripts

func (db *PostgresDriver) GetScripts() ([]*model.Script, error)

func (*PostgresDriver) GetScriptsByName

func (db *PostgresDriver) GetScriptsByName(name string) ([]*model.Script, error)

GetScriptsByName returns all scripts matching a name (for zone-specific overrides)

func (*PostgresDriver) GetScriptsByNameAndUser

func (db *PostgresDriver) GetScriptsByNameAndUser(name string, userId string) ([]*model.Script, error)

GetScriptsByNameAndUser returns all scripts matching a name and user_id (for zone-specific overrides)

func (*PostgresDriver) GetSession

func (db *PostgresDriver) GetSession(id string) (*model.Session, error)

GetSession returns nil, with no error, for a session that doesn't exist or has expired, as the other session stores do.

func (*PostgresDriver) GetSessions

func (db *PostgresDriver) GetSessions() ([]*model.Session, error)

func (*PostgresDriver) GetSessionsForUser

func (db *PostgresDriver) GetSessionsForUser(userId string) ([]*model.Session, error)

func (*PostgresDriver) GetSkill

func (db *PostgresDriver) GetSkill(id string) (*model.Skill, error)

func (*PostgresDriver) GetSkills

func (db *PostgresDriver) GetSkills() ([]*model.Skill, error)

func (*PostgresDriver) GetSkillsByName

func (db *PostgresDriver) GetSkillsByName(name string) ([]*model.Skill, error)

func (*PostgresDriver) GetSkillsByNameAndUser

func (db *PostgresDriver) GetSkillsByNameAndUser(name string, userId string) ([]*model.Skill, error)

func (*PostgresDriver) GetSpace

func (db *PostgresDriver) GetSpace(id string) (*model.Space, error)

func (*PostgresDriver) GetSpaceByName

func (db *PostgresDriver) GetSpaceByName(userId string, spaceName string) (*model.Space, error)

func (*PostgresDriver) GetSpaceUsageSample

func (db *PostgresDriver) GetSpaceUsageSample(id string) (*model.SpaceUsageSample, error)

func (*PostgresDriver) GetSpaceUsageSamples

func (db *PostgresDriver) GetSpaceUsageSamples(spaceId string, bucketKind string, from time.Time, to time.Time) ([]*model.SpaceUsageSample, error)

func (*PostgresDriver) GetSpaces

func (db *PostgresDriver) GetSpaces() ([]*model.Space, error)

func (*PostgresDriver) GetSpacesByPoolId

func (db *PostgresDriver) GetSpacesByPoolId(poolId string) ([]*model.Space, error)

func (*PostgresDriver) GetSpacesByTemplateId

func (db *PostgresDriver) GetSpacesByTemplateId(templateId string) ([]*model.Space, error)

func (*PostgresDriver) GetSpacesForUser

func (db *PostgresDriver) GetSpacesForUser(userId string) ([]*model.Space, error)

func (*PostgresDriver) GetStackDefinition

func (db *PostgresDriver) GetStackDefinition(id string) (*model.StackDefinition, error)

func (*PostgresDriver) GetStackDefinitionByName

func (db *PostgresDriver) GetStackDefinitionByName(name string, userId string) (*model.StackDefinition, error)

func (*PostgresDriver) GetStackDefinitions

func (db *PostgresDriver) GetStackDefinitions() ([]*model.StackDefinition, error)

func (*PostgresDriver) GetStackDefinitionsByUserId

func (db *PostgresDriver) GetStackDefinitionsByUserId(userId string) ([]*model.StackDefinition, error)

func (*PostgresDriver) GetStaleConversations

func (db *PostgresDriver) GetStaleConversations(before time.Time) ([]*model.Conversation, error)

func (*PostgresDriver) GetTemplate

func (db *PostgresDriver) GetTemplate(id string) (*model.Template, error)

func (*PostgresDriver) GetTemplateByName

func (db *PostgresDriver) GetTemplateByName(name string) (*model.Template, error)

func (*PostgresDriver) GetTemplateVar

func (db *PostgresDriver) GetTemplateVar(id string) (*model.TemplateVar, error)

func (*PostgresDriver) GetTemplateVarByName

func (db *PostgresDriver) GetTemplateVarByName(name string) (*model.TemplateVar, error)

func (*PostgresDriver) GetTemplateVars

func (db *PostgresDriver) GetTemplateVars() ([]*model.TemplateVar, error)

func (*PostgresDriver) GetTemplates

func (db *PostgresDriver) GetTemplates() ([]*model.Template, error)

func (*PostgresDriver) GetToken

func (db *PostgresDriver) GetToken(id string) (*model.Token, error)

func (*PostgresDriver) GetTokens

func (db *PostgresDriver) GetTokens() ([]*model.Token, error)

func (*PostgresDriver) GetTokensForUser

func (db *PostgresDriver) GetTokensForUser(userId string) ([]*model.Token, error)

func (*PostgresDriver) GetUser

func (db *PostgresDriver) GetUser(id string) (*model.User, error)

func (*PostgresDriver) GetUserByEmail

func (db *PostgresDriver) GetUserByEmail(email string) (*model.User, error)

func (*PostgresDriver) GetUserByProviderUID

func (db *PostgresDriver) GetUserByProviderUID(providerID, providerUID string) (*model.User, error)

func (*PostgresDriver) GetUserByUsername

func (db *PostgresDriver) GetUserByUsername(name string) (*model.User, error)

func (*PostgresDriver) GetUsers

func (db *PostgresDriver) GetUsers() ([]*model.User, error)

func (*PostgresDriver) GetVolume

func (db *PostgresDriver) GetVolume(id string) (*model.Volume, error)

func (*PostgresDriver) GetVolumeByName

func (db *PostgresDriver) GetVolumeByName(name string) (*model.Volume, error)

func (*PostgresDriver) GetVolumes

func (db *PostgresDriver) GetVolumes() ([]*model.Volume, error)

func (*PostgresDriver) HasAuditLog

func (db *PostgresDriver) HasAuditLog() bool

func (*PostgresDriver) HasUsers

func (db *PostgresDriver) HasUsers() (bool, error)

func (*PostgresDriver) SaveAuditLog

func (db *PostgresDriver) SaveAuditLog(auditLog *model.AuditLogEntry) error

func (*PostgresDriver) SaveCfgValue

func (db *PostgresDriver) SaveCfgValue(cfgValue *model.CfgValue) error

func (*PostgresDriver) SaveCommand

func (db *PostgresDriver) SaveCommand(command *model.Command, updateFields []string) error

func (*PostgresDriver) SaveConversation

func (db *PostgresDriver) SaveConversation(conv *model.Conversation) error

SaveConversation upserts a conversation by its primary key.

This is a single-statement INSERT ... ON CONFLICT DO UPDATE rather than the read-then-write used by SaveCommand: the chat UI fires persist() many times per turn, so overlapping saves of the same conversation are frequent and must not race each other into a duplicate key error. Concurrent saves serialize on the row lock instead.

created_at and user_id are set on insert and never changed thereafter (a conversation's creation time and owner are immutable).

func (*PostgresDriver) SaveEventSink

func (db *PostgresDriver) SaveEventSink(sink *model.EventSink, updateFields []string) error

func (*PostgresDriver) SaveGroup

func (db *PostgresDriver) SaveGroup(group *model.Group) error

func (*PostgresDriver) SaveMCPServer

func (db *PostgresDriver) SaveMCPServer(server *model.MCPServer, updateFields []string) error

func (*PostgresDriver) SavePoolDefinition

func (db *PostgresDriver) SavePoolDefinition(pool *model.PoolDefinition, updateFields []string) error

func (*PostgresDriver) SaveResponse

func (db *PostgresDriver) SaveResponse(response *model.Response) error

func (*PostgresDriver) SaveRole

func (db *PostgresDriver) SaveRole(role *model.Role) error

func (*PostgresDriver) SaveScript

func (db *PostgresDriver) SaveScript(script *model.Script, updateFields []string) error

func (*PostgresDriver) SaveSession

func (db *PostgresDriver) SaveSession(session *model.Session) error

func (*PostgresDriver) SaveSkill

func (db *PostgresDriver) SaveSkill(skill *model.Skill, updateFields []string) error

func (*PostgresDriver) SaveSpace

func (db *PostgresDriver) SaveSpace(space *model.Space, updateFields []string) error

func (*PostgresDriver) SaveSpaceUsageSample

func (db *PostgresDriver) SaveSpaceUsageSample(sample *model.SpaceUsageSample) error

func (*PostgresDriver) SaveStackDefinition

func (db *PostgresDriver) SaveStackDefinition(def *model.StackDefinition, updateFields []string) error

func (*PostgresDriver) SaveTemplate

func (db *PostgresDriver) SaveTemplate(template *model.Template, updateFields []string) error

func (*PostgresDriver) SaveTemplateVar

func (db *PostgresDriver) SaveTemplateVar(templateVar *model.TemplateVar) error

func (*PostgresDriver) SaveToken

func (db *PostgresDriver) SaveToken(token *model.Token) error

func (*PostgresDriver) SaveUser

func (db *PostgresDriver) SaveUser(user *model.User, updateFields []string) error

func (*PostgresDriver) SaveVolume

func (db *PostgresDriver) SaveVolume(volume *model.Volume, updateFields []string) error

Jump to

Keyboard shortcuts

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