You've already forked agentic-coding-workflow
bugfix
This commit is contained in:
@@ -0,0 +1,268 @@
|
||||
// Code generated by sqlc. DO NOT EDIT.
|
||||
// versions:
|
||||
// sqlc v1.31.1
|
||||
// source: memory.sql
|
||||
|
||||
package projectmemorysqlc
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/jackc/pgx/v5/pgtype"
|
||||
)
|
||||
|
||||
const deleteEntry = `-- name: DeleteEntry :exec
|
||||
DELETE FROM project_memory WHERE id = $1
|
||||
`
|
||||
|
||||
func (q *Queries) DeleteEntry(ctx context.Context, id pgtype.UUID) error {
|
||||
_, err := q.db.Exec(ctx, deleteEntry, id)
|
||||
return err
|
||||
}
|
||||
|
||||
const getEntry = `-- name: GetEntry :one
|
||||
SELECT id, project_id, workspace_id, kind, title, body, tags, source,
|
||||
embedding_model, created_by, created_at, updated_at
|
||||
FROM project_memory
|
||||
WHERE id = $1
|
||||
`
|
||||
|
||||
type GetEntryRow struct {
|
||||
ID pgtype.UUID `json:"id"`
|
||||
ProjectID pgtype.UUID `json:"project_id"`
|
||||
WorkspaceID pgtype.UUID `json:"workspace_id"`
|
||||
Kind string `json:"kind"`
|
||||
Title string `json:"title"`
|
||||
Body string `json:"body"`
|
||||
Tags []string `json:"tags"`
|
||||
Source string `json:"source"`
|
||||
EmbeddingModel *string `json:"embedding_model"`
|
||||
CreatedBy pgtype.UUID `json:"created_by"`
|
||||
CreatedAt pgtype.Timestamptz `json:"created_at"`
|
||||
UpdatedAt pgtype.Timestamptz `json:"updated_at"`
|
||||
}
|
||||
|
||||
func (q *Queries) GetEntry(ctx context.Context, id pgtype.UUID) (GetEntryRow, error) {
|
||||
row := q.db.QueryRow(ctx, getEntry, id)
|
||||
var i GetEntryRow
|
||||
err := row.Scan(
|
||||
&i.ID,
|
||||
&i.ProjectID,
|
||||
&i.WorkspaceID,
|
||||
&i.Kind,
|
||||
&i.Title,
|
||||
&i.Body,
|
||||
&i.Tags,
|
||||
&i.Source,
|
||||
&i.EmbeddingModel,
|
||||
&i.CreatedBy,
|
||||
&i.CreatedAt,
|
||||
&i.UpdatedAt,
|
||||
)
|
||||
return i, err
|
||||
}
|
||||
|
||||
const insertEntry = `-- name: InsertEntry :one
|
||||
|
||||
INSERT INTO project_memory (
|
||||
id, project_id, workspace_id, kind, title, body, tags, source,
|
||||
embedding_model, created_by
|
||||
) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10)
|
||||
RETURNING id, project_id, workspace_id, kind, title, body, tags, source,
|
||||
embedding_model, created_by, created_at, updated_at
|
||||
`
|
||||
|
||||
type InsertEntryParams struct {
|
||||
ID pgtype.UUID `json:"id"`
|
||||
ProjectID pgtype.UUID `json:"project_id"`
|
||||
WorkspaceID pgtype.UUID `json:"workspace_id"`
|
||||
Kind string `json:"kind"`
|
||||
Title string `json:"title"`
|
||||
Body string `json:"body"`
|
||||
Tags []string `json:"tags"`
|
||||
Source string `json:"source"`
|
||||
EmbeddingModel *string `json:"embedding_model"`
|
||||
CreatedBy pgtype.UUID `json:"created_by"`
|
||||
}
|
||||
|
||||
type InsertEntryRow struct {
|
||||
ID pgtype.UUID `json:"id"`
|
||||
ProjectID pgtype.UUID `json:"project_id"`
|
||||
WorkspaceID pgtype.UUID `json:"workspace_id"`
|
||||
Kind string `json:"kind"`
|
||||
Title string `json:"title"`
|
||||
Body string `json:"body"`
|
||||
Tags []string `json:"tags"`
|
||||
Source string `json:"source"`
|
||||
EmbeddingModel *string `json:"embedding_model"`
|
||||
CreatedBy pgtype.UUID `json:"created_by"`
|
||||
CreatedAt pgtype.Timestamptz `json:"created_at"`
|
||||
UpdatedAt pgtype.Timestamptz `json:"updated_at"`
|
||||
}
|
||||
|
||||
// The embedding (vector) column is excluded from sqlc queries (no native pgvector
|
||||
// type). Write sets embedding via a hand-written pgx UPDATE; vector KNN search is
|
||||
// hand-written in repository.go. These queries cover the non-vector path.
|
||||
func (q *Queries) InsertEntry(ctx context.Context, arg InsertEntryParams) (InsertEntryRow, error) {
|
||||
row := q.db.QueryRow(ctx, insertEntry,
|
||||
arg.ID,
|
||||
arg.ProjectID,
|
||||
arg.WorkspaceID,
|
||||
arg.Kind,
|
||||
arg.Title,
|
||||
arg.Body,
|
||||
arg.Tags,
|
||||
arg.Source,
|
||||
arg.EmbeddingModel,
|
||||
arg.CreatedBy,
|
||||
)
|
||||
var i InsertEntryRow
|
||||
err := row.Scan(
|
||||
&i.ID,
|
||||
&i.ProjectID,
|
||||
&i.WorkspaceID,
|
||||
&i.Kind,
|
||||
&i.Title,
|
||||
&i.Body,
|
||||
&i.Tags,
|
||||
&i.Source,
|
||||
&i.EmbeddingModel,
|
||||
&i.CreatedBy,
|
||||
&i.CreatedAt,
|
||||
&i.UpdatedAt,
|
||||
)
|
||||
return i, err
|
||||
}
|
||||
|
||||
const listByProject = `-- name: ListByProject :many
|
||||
SELECT id, project_id, workspace_id, kind, title, body, tags, source,
|
||||
embedding_model, created_by, created_at, updated_at
|
||||
FROM project_memory
|
||||
WHERE project_id = $1
|
||||
AND ($2::text = '' OR kind = $2)
|
||||
ORDER BY kind ASC, created_at DESC
|
||||
`
|
||||
|
||||
type ListByProjectParams struct {
|
||||
ProjectID pgtype.UUID `json:"project_id"`
|
||||
Column2 string `json:"column_2"`
|
||||
}
|
||||
|
||||
type ListByProjectRow struct {
|
||||
ID pgtype.UUID `json:"id"`
|
||||
ProjectID pgtype.UUID `json:"project_id"`
|
||||
WorkspaceID pgtype.UUID `json:"workspace_id"`
|
||||
Kind string `json:"kind"`
|
||||
Title string `json:"title"`
|
||||
Body string `json:"body"`
|
||||
Tags []string `json:"tags"`
|
||||
Source string `json:"source"`
|
||||
EmbeddingModel *string `json:"embedding_model"`
|
||||
CreatedBy pgtype.UUID `json:"created_by"`
|
||||
CreatedAt pgtype.Timestamptz `json:"created_at"`
|
||||
UpdatedAt pgtype.Timestamptz `json:"updated_at"`
|
||||
}
|
||||
|
||||
func (q *Queries) ListByProject(ctx context.Context, arg ListByProjectParams) ([]ListByProjectRow, error) {
|
||||
rows, err := q.db.Query(ctx, listByProject, arg.ProjectID, arg.Column2)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var items []ListByProjectRow
|
||||
for rows.Next() {
|
||||
var i ListByProjectRow
|
||||
if err := rows.Scan(
|
||||
&i.ID,
|
||||
&i.ProjectID,
|
||||
&i.WorkspaceID,
|
||||
&i.Kind,
|
||||
&i.Title,
|
||||
&i.Body,
|
||||
&i.Tags,
|
||||
&i.Source,
|
||||
&i.EmbeddingModel,
|
||||
&i.CreatedBy,
|
||||
&i.CreatedAt,
|
||||
&i.UpdatedAt,
|
||||
); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
items = append(items, i)
|
||||
}
|
||||
if err := rows.Err(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return items, nil
|
||||
}
|
||||
|
||||
const searchByKeyword = `-- name: SearchByKeyword :many
|
||||
SELECT id, project_id, workspace_id, kind, title, body, tags, source,
|
||||
embedding_model, created_by, created_at, updated_at
|
||||
FROM project_memory
|
||||
WHERE project_id = $1
|
||||
AND ($2::text = '' OR kind = $2)
|
||||
AND ($3::text = '' OR title ILIKE '%' || $3 || '%' OR body ILIKE '%' || $3 || '%' OR $3 = ANY(tags))
|
||||
ORDER BY updated_at DESC
|
||||
LIMIT $4
|
||||
`
|
||||
|
||||
type SearchByKeywordParams struct {
|
||||
ProjectID pgtype.UUID `json:"project_id"`
|
||||
Column2 string `json:"column_2"`
|
||||
Column3 string `json:"column_3"`
|
||||
Limit int32 `json:"limit"`
|
||||
}
|
||||
|
||||
type SearchByKeywordRow struct {
|
||||
ID pgtype.UUID `json:"id"`
|
||||
ProjectID pgtype.UUID `json:"project_id"`
|
||||
WorkspaceID pgtype.UUID `json:"workspace_id"`
|
||||
Kind string `json:"kind"`
|
||||
Title string `json:"title"`
|
||||
Body string `json:"body"`
|
||||
Tags []string `json:"tags"`
|
||||
Source string `json:"source"`
|
||||
EmbeddingModel *string `json:"embedding_model"`
|
||||
CreatedBy pgtype.UUID `json:"created_by"`
|
||||
CreatedAt pgtype.Timestamptz `json:"created_at"`
|
||||
UpdatedAt pgtype.Timestamptz `json:"updated_at"`
|
||||
}
|
||||
|
||||
func (q *Queries) SearchByKeyword(ctx context.Context, arg SearchByKeywordParams) ([]SearchByKeywordRow, error) {
|
||||
rows, err := q.db.Query(ctx, searchByKeyword,
|
||||
arg.ProjectID,
|
||||
arg.Column2,
|
||||
arg.Column3,
|
||||
arg.Limit,
|
||||
)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
var items []SearchByKeywordRow
|
||||
for rows.Next() {
|
||||
var i SearchByKeywordRow
|
||||
if err := rows.Scan(
|
||||
&i.ID,
|
||||
&i.ProjectID,
|
||||
&i.WorkspaceID,
|
||||
&i.Kind,
|
||||
&i.Title,
|
||||
&i.Body,
|
||||
&i.Tags,
|
||||
&i.Source,
|
||||
&i.EmbeddingModel,
|
||||
&i.CreatedBy,
|
||||
&i.CreatedAt,
|
||||
&i.UpdatedAt,
|
||||
); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
items = append(items, i)
|
||||
}
|
||||
if err := rows.Err(); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return items, nil
|
||||
}
|
||||
Reference in New Issue
Block a user