Documentation
¶
Index ¶
- type AddMessageParams
- type AddMessageWithIDParams
- type CreateSessionParams
- type DBTX
- type Document
- type GetDocumentRow
- type GetMessagesParams
- type GetUserMessageBeforeParams
- type ListDocumentsBySourceTypeParams
- type ListDocumentsBySourceTypeRow
- type ListSessionsParams
- type ListSessionsWithMessagesParams
- type Message
- type Queries
- func (q *Queries) AddMessage(ctx context.Context, arg AddMessageParams) error
- func (q *Queries) AddMessageWithID(ctx context.Context, arg AddMessageWithIDParams) (Message, error)
- func (q *Queries) CountDocuments(ctx context.Context, dollar_1 []byte) (int64, error)
- func (q *Queries) CountDocumentsAll(ctx context.Context) (int64, error)
- func (q *Queries) CountMessages(ctx context.Context, sessionID uuid.UUID) (int32, error)
- func (q *Queries) CreateSession(ctx context.Context, arg CreateSessionParams) (Session, error)
- func (q *Queries) DeleteDocument(ctx context.Context, id string) error
- func (q *Queries) DeleteMessages(ctx context.Context, sessionID uuid.UUID) error
- func (q *Queries) DeleteSession(ctx context.Context, id uuid.UUID) error
- func (q *Queries) GetDocument(ctx context.Context, id string) (GetDocumentRow, error)
- func (q *Queries) GetMaxSequenceNumber(ctx context.Context, sessionID uuid.UUID) (int32, error)
- func (q *Queries) GetMessageByID(ctx context.Context, id uuid.UUID) (Message, error)
- func (q *Queries) GetMessages(ctx context.Context, arg GetMessagesParams) ([]Message, error)
- func (q *Queries) GetSession(ctx context.Context, id uuid.UUID) (Session, error)
- func (q *Queries) GetUserMessageBefore(ctx context.Context, arg GetUserMessageBeforeParams) ([]byte, error)
- func (q *Queries) ListDocumentsBySourceType(ctx context.Context, arg ListDocumentsBySourceTypeParams) ([]ListDocumentsBySourceTypeRow, error)
- func (q *Queries) ListSessions(ctx context.Context, arg ListSessionsParams) ([]Session, error)
- func (q *Queries) ListSessionsWithMessages(ctx context.Context, arg ListSessionsWithMessagesParams) ([]Session, error)
- func (q *Queries) LockSession(ctx context.Context, id uuid.UUID) (uuid.UUID, error)
- func (q *Queries) SearchBySourceType(ctx context.Context, arg SearchBySourceTypeParams) ([]SearchBySourceTypeRow, error)
- func (q *Queries) SearchDocuments(ctx context.Context, arg SearchDocumentsParams) ([]SearchDocumentsRow, error)
- func (q *Queries) SearchDocumentsAll(ctx context.Context, arg SearchDocumentsAllParams) ([]SearchDocumentsAllRow, error)
- func (q *Queries) UpdateMessageContent(ctx context.Context, arg UpdateMessageContentParams) error
- func (q *Queries) UpdateMessageStatus(ctx context.Context, arg UpdateMessageStatusParams) error
- func (q *Queries) UpdateSessionTitle(ctx context.Context, arg UpdateSessionTitleParams) error
- func (q *Queries) UpdateSessionUpdatedAt(ctx context.Context, arg UpdateSessionUpdatedAtParams) error
- func (q *Queries) UpsertDocument(ctx context.Context, arg UpsertDocumentParams) error
- func (q *Queries) WithTx(tx pgx.Tx) *Queries
- type SearchBySourceTypeParams
- type SearchBySourceTypeRow
- type SearchDocumentsAllParams
- type SearchDocumentsAllRow
- type SearchDocumentsParams
- type SearchDocumentsRow
- type Session
- type UpdateMessageContentParams
- type UpdateMessageStatusParams
- type UpdateSessionTitleParams
- type UpdateSessionUpdatedAtParams
- type UpsertDocumentParams
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AddMessageParams ¶
type AddMessageWithIDParams ¶
type CreateSessionParams ¶
type GetDocumentRow ¶
type GetMessagesParams ¶
type ListSessionsParams ¶
type Message ¶
type Message struct {
ID uuid.UUID `json:"id"`
SessionID uuid.UUID `json:"session_id"`
Role string `json:"role"`
Content []byte `json:"content"`
SequenceNumber int32 `json:"sequence_number"`
CreatedAt pgtype.Timestamptz `json:"created_at"`
Status string `json:"status"`
UpdatedAt pgtype.Timestamptz `json:"updated_at"`
}
type Queries ¶
type Queries struct {
// contains filtered or unexported fields
}
func (*Queries) AddMessage ¶
func (q *Queries) AddMessage(ctx context.Context, arg AddMessageParams) error
Add a message to a session
func (*Queries) AddMessageWithID ¶
func (q *Queries) AddMessageWithID(ctx context.Context, arg AddMessageWithIDParams) (Message, error)
Add message with pre-assigned ID and status (for streaming)
func (*Queries) CountDocuments ¶
func (*Queries) CountDocumentsAll ¶
func (*Queries) CountMessages ¶
Count messages in a session
func (*Queries) CreateSession ¶
Sessions queries for sqlc Generated code will be in internal/sqlc/sessions.sql.go
func (*Queries) DeleteDocument ¶
func (*Queries) DeleteMessages ¶
Delete all messages in a session
func (*Queries) DeleteSession ¶
func (*Queries) GetDocument ¶
func (*Queries) GetMaxSequenceNumber ¶
Get max sequence number for a session
func (*Queries) GetMessageByID ¶
Get a single message by ID (for streaming lookup).
func (*Queries) GetMessages ¶
Get all messages for a session ordered by sequence
func (*Queries) GetSession ¶
func (*Queries) GetUserMessageBefore ¶
func (q *Queries) GetUserMessageBefore(ctx context.Context, arg GetUserMessageBeforeParams) ([]byte, error)
Get the user message content immediately before a given sequence number. Used by Stream handler to retrieve query without URL parameter.
func (*Queries) ListDocumentsBySourceType ¶
func (q *Queries) ListDocumentsBySourceType(ctx context.Context, arg ListDocumentsBySourceTypeParams) ([]ListDocumentsBySourceTypeRow, error)
List all documents by source_type using dedicated indexed column Used for listing indexed files without needing embeddings
func (*Queries) ListSessions ¶
func (*Queries) ListSessionsWithMessages ¶
func (q *Queries) ListSessionsWithMessages(ctx context.Context, arg ListSessionsWithMessagesParams) ([]Session, error)
Only list sessions that have messages or titles (not empty sessions) This is used for sidebar to hide "New Chat" placeholder sessions
func (*Queries) LockSession ¶
Locks the session row to prevent concurrent modifications
func (*Queries) SearchBySourceType ¶
func (q *Queries) SearchBySourceType(ctx context.Context, arg SearchBySourceTypeParams) ([]SearchBySourceTypeRow, error)
===== Optimized RAG Queries (SQL-level filtering) ===== Generic search by source_type using dedicated indexed column
func (*Queries) SearchDocuments ¶
func (q *Queries) SearchDocuments(ctx context.Context, arg SearchDocumentsParams) ([]SearchDocumentsRow, error)
func (*Queries) SearchDocumentsAll ¶
func (q *Queries) SearchDocumentsAll(ctx context.Context, arg SearchDocumentsAllParams) ([]SearchDocumentsAllRow, error)
func (*Queries) UpdateMessageContent ¶
func (q *Queries) UpdateMessageContent(ctx context.Context, arg UpdateMessageContentParams) error
Update message content and mark as completed
func (*Queries) UpdateMessageStatus ¶
func (q *Queries) UpdateMessageStatus(ctx context.Context, arg UpdateMessageStatusParams) error
Update message status (streaming/completed/failed)
func (*Queries) UpdateSessionTitle ¶
func (q *Queries) UpdateSessionTitle(ctx context.Context, arg UpdateSessionTitleParams) error
Update session title (for auto-generation from first message or user edit)
func (*Queries) UpdateSessionUpdatedAt ¶
func (q *Queries) UpdateSessionUpdatedAt(ctx context.Context, arg UpdateSessionUpdatedAtParams) error
func (*Queries) UpsertDocument ¶
func (q *Queries) UpsertDocument(ctx context.Context, arg UpsertDocumentParams) error
Documents queries for sqlc Generated code will be in internal/sqlc/documents.sql.go
type SearchBySourceTypeRow ¶
type SearchDocumentsAllRow ¶
type SearchDocumentsParams ¶
type SearchDocumentsRow ¶
type Session ¶
type Session struct {
ID uuid.UUID `json:"id"`
Title *string `json:"title"`
CreatedAt pgtype.Timestamptz `json:"created_at"`
UpdatedAt pgtype.Timestamptz `json:"updated_at"`
ModelName *string `json:"model_name"`
SystemPrompt *string `json:"system_prompt"`
MessageCount *int32 `json:"message_count"`
}