@derwinjs/db 0.4.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,44 @@
1
+ /**
2
+ * RAGRetriever — Prisma implementation against Derwin's RAGCorpus table,
3
+ * backed by pgvector.
4
+ *
5
+ * QAP-Sprint5 Phase 2. Implements the RAGRetriever contract from
6
+ * @derwinjs/sdk (see packages/sdk/src/types/rag-retriever.ts) against the
7
+ * @derwinjs/db Prisma client. Sprint 5 Phase 1 enabled the pgvector
8
+ * extension and migrated `rag_corpus.embedding` to `vector(1536)`. The
9
+ * generated client types this column as `Unsupported("vector(1536)")?` —
10
+ * standard model.* methods cannot read or write it. We therefore go
11
+ * through `$queryRaw` / `$executeRaw` for both paths. The HNSW index from
12
+ * the same migration is configured with `vector_cosine_ops` to back the
13
+ * `<=>` cosine-distance operator we use in the ORDER BY / similarity
14
+ * computation.
15
+ *
16
+ * Query convention (read path):
17
+ *
18
+ * ORDER BY embedding <=> $vec::vector -- smallest distance first
19
+ * 1 - (embedding <=> $vec::vector) AS similarity -- 0..1 cosine sim
20
+ *
21
+ * For the read path we use `Prisma.sql` template-tag + parameterized
22
+ * vector literal cast to `::vector`. PostgreSQL accepts `$N::vector` —
23
+ * the cast applies to the bound parameter at execution. The vector text
24
+ * format pgvector accepts is `[0.1,0.2,...]`. This keeps the value
25
+ * parameterized (no string concatenation, no SQL injection surface) while
26
+ * still letting us hit the HNSW index. The conditional surface filter is
27
+ * spliced in via `Prisma.sql` / `Prisma.empty` so the SQL stays a single
28
+ * template-tag chain. We deliberately do NOT use `$queryRawUnsafe` — the
29
+ * `Prisma.sql` path is type-checked, parameterized, and survives the
30
+ * vitest-mock-extended mock just as cleanly.
31
+ *
32
+ * Tenant isolation: every method scopes by projectId in the WHERE clause.
33
+ * Pattern D — findSimilar surfaces an empty array for cross-tenant misses
34
+ * (Postgres simply returns no rows when projectId doesn't match), never
35
+ * throws on tenant mismatch (defense-in-depth against tenant enumeration).
36
+ */
37
+ import { type PrismaClient } from './prisma.js';
38
+ import { type RAGRetriever } from '@derwinjs/sdk';
39
+ export interface PrismaRAGRetrieverConfig {
40
+ /** Generated Prisma client. Pass an instance per process. */
41
+ prisma: PrismaClient;
42
+ }
43
+ export declare function createPrismaRAGRetriever(config: PrismaRAGRetrieverConfig): RAGRetriever;
44
+ //# sourceMappingURL=rag-retriever.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rag-retriever.d.ts","sourceRoot":"","sources":["../src/rag-retriever.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AAEH,OAAO,EAAU,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAGL,KAAK,YAAY,EAGlB,MAAM,eAAe,CAAC;AASvB,MAAM,WAAW,wBAAwB;IACvC,6DAA6D;IAC7D,MAAM,EAAE,YAAY,CAAC;CACtB;AAiBD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,wBAAwB,GAAG,YAAY,CAuGvF"}
@@ -0,0 +1,177 @@
1
+ /**
2
+ * RAGRetriever — Prisma implementation against Derwin's RAGCorpus table,
3
+ * backed by pgvector.
4
+ *
5
+ * QAP-Sprint5 Phase 2. Implements the RAGRetriever contract from
6
+ * @derwinjs/sdk (see packages/sdk/src/types/rag-retriever.ts) against the
7
+ * @derwinjs/db Prisma client. Sprint 5 Phase 1 enabled the pgvector
8
+ * extension and migrated `rag_corpus.embedding` to `vector(1536)`. The
9
+ * generated client types this column as `Unsupported("vector(1536)")?` —
10
+ * standard model.* methods cannot read or write it. We therefore go
11
+ * through `$queryRaw` / `$executeRaw` for both paths. The HNSW index from
12
+ * the same migration is configured with `vector_cosine_ops` to back the
13
+ * `<=>` cosine-distance operator we use in the ORDER BY / similarity
14
+ * computation.
15
+ *
16
+ * Query convention (read path):
17
+ *
18
+ * ORDER BY embedding <=> $vec::vector -- smallest distance first
19
+ * 1 - (embedding <=> $vec::vector) AS similarity -- 0..1 cosine sim
20
+ *
21
+ * For the read path we use `Prisma.sql` template-tag + parameterized
22
+ * vector literal cast to `::vector`. PostgreSQL accepts `$N::vector` —
23
+ * the cast applies to the bound parameter at execution. The vector text
24
+ * format pgvector accepts is `[0.1,0.2,...]`. This keeps the value
25
+ * parameterized (no string concatenation, no SQL injection surface) while
26
+ * still letting us hit the HNSW index. The conditional surface filter is
27
+ * spliced in via `Prisma.sql` / `Prisma.empty` so the SQL stays a single
28
+ * template-tag chain. We deliberately do NOT use `$queryRawUnsafe` — the
29
+ * `Prisma.sql` path is type-checked, parameterized, and survives the
30
+ * vitest-mock-extended mock just as cleanly.
31
+ *
32
+ * Tenant isolation: every method scopes by projectId in the WHERE clause.
33
+ * Pattern D — findSimilar surfaces an empty array for cross-tenant misses
34
+ * (Postgres simply returns no rows when projectId doesn't match), never
35
+ * throws on tenant mismatch (defense-in-depth against tenant enumeration).
36
+ */
37
+ import { Prisma } from './prisma.js';
38
+ import { RAGRetrieverError, } from '@derwinjs/sdk';
39
+ // ─── Constants ────────────────────────────────────────────────────────────
40
+ const EMBEDDING_DIM = 1536;
41
+ const DEFAULT_TOP_K = 5;
42
+ // ─── Factory ─────────────────────────────────────────────────────────────
43
+ export function createPrismaRAGRetriever(config) {
44
+ const { prisma } = config;
45
+ return {
46
+ async findSimilar(input) {
47
+ validateFindSimilarInput(input);
48
+ const limit = input.limit ?? DEFAULT_TOP_K;
49
+ const vectorLiteral = formatVectorLiteral(input.queryEmbedding);
50
+ // Surface filter is optional — splice it in via Prisma.sql or
51
+ // Prisma.empty so the rest of the template chain stays parameterized.
52
+ const surfaceFilter = input.surface
53
+ ? Prisma.sql `AND surface::text = ${input.surface}`
54
+ : Prisma.empty;
55
+ const rows = await prisma.$queryRaw(Prisma.sql `
56
+ SELECT
57
+ id,
58
+ classification,
59
+ surface::text AS surface,
60
+ "promptText",
61
+ diff,
62
+ "outcomeQuality",
63
+ "addedAt",
64
+ (1 - (embedding <=> ${vectorLiteral}::vector))::float8 AS similarity
65
+ FROM "derwin"."rag_corpus"
66
+ WHERE "projectId" = ${input.projectId}
67
+ AND classification = ${input.classification}
68
+ ${surfaceFilter}
69
+ ORDER BY embedding <=> ${vectorLiteral}::vector
70
+ LIMIT ${limit}
71
+ `);
72
+ // Defensive shape coercion — the raw projection should already match,
73
+ // but we copy through the SDK type to ensure consumers never receive
74
+ // an opaque Prisma row.
75
+ return rows.map((r) => ({
76
+ id: r.id,
77
+ classification: r.classification,
78
+ surface: r.surface,
79
+ promptText: r.promptText,
80
+ diff: r.diff,
81
+ outcomeQuality: r.outcomeQuality,
82
+ addedAt: r.addedAt,
83
+ similarity: r.similarity,
84
+ }));
85
+ },
86
+ async persist(input) {
87
+ validatePersistInput(input);
88
+ const id = generateId();
89
+ const vectorLiteral = formatVectorLiteral(input.embedding);
90
+ try {
91
+ await prisma.$executeRaw(Prisma.sql `
92
+ INSERT INTO "derwin"."rag_corpus"
93
+ (id, "projectId", classification, surface, "promptText", diff, embedding, "fixAttemptId", "outcomeQuality", "addedAt")
94
+ VALUES
95
+ (
96
+ ${id},
97
+ ${input.projectId},
98
+ ${input.classification},
99
+ ${input.surface}::"derwin"."SurfaceCategory",
100
+ ${input.promptText},
101
+ ${input.diff},
102
+ ${vectorLiteral}::vector,
103
+ ${input.fixAttemptId},
104
+ ${input.outcomeQuality},
105
+ NOW()
106
+ )
107
+ `);
108
+ }
109
+ catch (err) {
110
+ // Map FK violations. Postgres surfaces them via the SQLSTATE 23503
111
+ // class; Prisma wraps that into PrismaClientKnownRequestError P2003
112
+ // when the model has an explicit relation, but for raw SQL we may
113
+ // see the underlying message. Match on either signal.
114
+ if (err instanceof Prisma.PrismaClientKnownRequestError &&
115
+ (err.code === 'P2003' || /foreign key/i.test(err.message))) {
116
+ throw new RAGRetrieverError('fk_violation', 'fixAttemptId or projectId not found — foreign key violation', err);
117
+ }
118
+ if (err instanceof Error && /foreign key|fk constraint|constraint/i.test(err.message)) {
119
+ throw new RAGRetrieverError('fk_violation', 'fixAttemptId or projectId not found — foreign key violation', err);
120
+ }
121
+ throw err;
122
+ }
123
+ return { id };
124
+ },
125
+ };
126
+ }
127
+ // ─── Helpers ─────────────────────────────────────────────────────────────
128
+ /** pgvector accepts `[v1,v2,...]` as the text representation of a vector. */
129
+ function formatVectorLiteral(values) {
130
+ return '[' + values.join(',') + ']';
131
+ }
132
+ /** cuid-ish id; deterministic shape so callers can pattern-match in logs. */
133
+ function generateId() {
134
+ return `rag_${String(Date.now())}_${Math.random().toString(36).slice(2, 11)}`;
135
+ }
136
+ function validateFindSimilarInput(input) {
137
+ if (typeof input.projectId !== 'string' || !input.projectId.trim()) {
138
+ throw new RAGRetrieverError('invalid_input', 'projectId is required');
139
+ }
140
+ if (typeof input.classification !== 'string' || !input.classification.trim()) {
141
+ throw new RAGRetrieverError('invalid_input', 'classification is required');
142
+ }
143
+ if (!Array.isArray(input.queryEmbedding) || input.queryEmbedding.length !== EMBEDDING_DIM) {
144
+ const actual = Array.isArray(input.queryEmbedding)
145
+ ? String(input.queryEmbedding.length)
146
+ : 'non-array';
147
+ throw new RAGRetrieverError('invalid_embedding_length', `queryEmbedding must be ${String(EMBEDDING_DIM)}-dim, got ${actual}`);
148
+ }
149
+ }
150
+ function validatePersistInput(input) {
151
+ if (typeof input.projectId !== 'string' || !input.projectId.trim()) {
152
+ throw new RAGRetrieverError('invalid_input', 'projectId is required');
153
+ }
154
+ if (typeof input.classification !== 'string' || !input.classification.trim()) {
155
+ throw new RAGRetrieverError('invalid_input', 'classification is required');
156
+ }
157
+ if (typeof input.surface !== 'string' || !input.surface.trim()) {
158
+ throw new RAGRetrieverError('invalid_input', 'surface is required');
159
+ }
160
+ if (typeof input.promptText !== 'string' || !input.promptText.trim()) {
161
+ throw new RAGRetrieverError('invalid_input', 'promptText is required');
162
+ }
163
+ if (typeof input.diff !== 'string' || !input.diff.trim()) {
164
+ throw new RAGRetrieverError('invalid_input', 'diff is required');
165
+ }
166
+ if (typeof input.fixAttemptId !== 'string' || !input.fixAttemptId.trim()) {
167
+ throw new RAGRetrieverError('invalid_input', 'fixAttemptId is required');
168
+ }
169
+ if (typeof input.outcomeQuality !== 'number' || Number.isNaN(input.outcomeQuality)) {
170
+ throw new RAGRetrieverError('invalid_input', 'outcomeQuality must be a number');
171
+ }
172
+ if (!Array.isArray(input.embedding) || input.embedding.length !== EMBEDDING_DIM) {
173
+ const actual = Array.isArray(input.embedding) ? String(input.embedding.length) : 'non-array';
174
+ throw new RAGRetrieverError('invalid_embedding_length', `embedding must be ${String(EMBEDDING_DIM)}-dim, got ${actual}`);
175
+ }
176
+ }
177
+ //# sourceMappingURL=rag-retriever.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rag-retriever.js","sourceRoot":"","sources":["../src/rag-retriever.ts"],"names":[],"mappings":"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"}
@@ -89,6 +89,8 @@ const stubRepo = {
89
89
  throw new Error('smoke: stubRepo.describeRepo called — DRY_RUN should not reach repo');
90
90
  },
91
91
  fetchPRDiff: (_prNumber) => Promise.resolve(null),
92
+ fetchFile: () => Promise.resolve(null),
93
+ fetchFileHistory: () => Promise.resolve(null),
92
94
  };
93
95
  // ─── Wiring ───────────────────────────────────────────────────────────────
94
96
  const prisma = new PrismaClient();
@@ -1 +1 @@
1
- {"version":3,"file":"smoke-auto-fix.js","sourceRoot":"","sources":["../../src/scripts/smoke-auto-fix.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smoke-auto-fix.js","sourceRoot":"","sources":["../../src/scripts/smoke-auto-fix.ts"],"names":[],"mappings":"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"}
@@ -261,6 +261,8 @@ async function main() {
261
261
  throw new Error('smoke: describeRepo not exercised');
262
262
  },
263
263
  fetchPRDiff: () => Promise.resolve(null),
264
+ fetchFile: () => Promise.resolve(null),
265
+ fetchFileHistory: () => Promise.resolve(null),
264
266
  };
265
267
  const stubRegressionDetector = () => Promise.resolve(false);
266
268
  const recorder = createOutcomeRecorder({
@@ -1 +1 @@
1
- {"version":3,"file":"smoke-learning-loop.js","sourceRoot":"","sources":["../../src/scripts/smoke-learning-loop.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smoke-learning-loop.js","sourceRoot":"","sources":["../../src/scripts/smoke-learning-loop.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,cAAc,GAEf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAAE,yBAAyB,EAAE,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4BAA4B,CAAC;AAC3E,OAAO,EAAE,oCAAoC,EAAE,MAAM,kCAAkC,CAAC;AAExF,MAAM,YAAY,GAAG,iBAAiB,CAAC;AACvC,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;AAEnD,MAAM,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;AAClC,MAAM,WAAW,GAAG,yBAAyB,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,CAAC,CAAC;AAChG,MAAM,YAAY,GAAG,6BAA6B,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;AAC/D,MAAM,UAAU,GAAG,oCAAoC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;AAEpE,IAAI,YAAgC,CAAC;AACrC,MAAM,gBAAgB,GAAa,EAAE,CAAC;AACtC,MAAM,iBAAiB,GAAa,EAAE,CAAC;AACvC,IAAI,iBAAqC,CAAC;AAM1C,MAAM,aAAa,GAAmB,EAAE,CAAC;AAEzC,KAAK,UAAU,IAAI;IACjB,+EAA+E;IAC/E,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC;IAClF,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,CAAC;IACD,iBAAiB,GAAG,QAAQ,CAAC,EAAE,CAAC;IAChC,OAAO,CAAC,GAAG,CAAC,wBAAwB,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;IAEpD,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;QACpC,IAAI,EAAE;YACJ,SAAS,EAAE,QAAQ,CAAC,EAAE;YACtB,WAAW,EAAE,YAAY;YACzB,WAAW,EAAE,oBAAoB;YACjC,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,6BAA6B,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE;YACrE,aAAa,EAAE,CAAC;YAChB,cAAc,EAAE,CAAC;SAClB;KACF,CAAC,CAAC;IACH,YAAY,GAAG,GAAG,CAAC,EAAE,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,iCAAiC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;IAExD,gFAAgF;IAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,WAAW,CAAC,cAAc,CAAC;YACzC,SAAS,EAAE,QAAQ,CAAC,EAAE;YACtB,OAAO,EAAE,GAAG,CAAC,EAAE;YACf,KAAK,EAAE,GAAG,YAAY,uBAAuB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE;YAC5D,OAAO,EAAE,iBAAiB;YAC1B,cAAc,EAAE,aAAa;YAC7B,QAAQ,EAAE,MAAM;YAChB,QAAQ,EAAE,MAAM;YAChB,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;YAC/C,kBAAkB,EAAE,OAAO;YAC3B,WAAW,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;YACxE,mBAAmB,EAAE,WAAW;SACjC,CAAC,CAAC;QACH,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,MAAM,CAAC,GAAG,MAAM,WAAW,CAAC,cAAc,CAAC;YACzC,SAAS,EAAE,QAAQ,CAAC,EAAE;YACtB,OAAO,EAAE,GAAG,CAAC,EAAE;YACf,KAAK,EAAE,GAAG,YAAY,oBAAoB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE;YACzD,OAAO,EAAE,iBAAiB;YAC1B,cAAc,EAAE,UAAU;YAC1B,QAAQ,EAAE,QAAQ;YAClB,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC;YAC/C,kBAAkB,EAAE,OAAO;YAC3B,WAAW,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;YACxE,mBAAmB,EAAE,WAAW;SACjC,CAAC,CAAC;QACH,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,cAAc,EAAE,UAAU,EAAE,CAAC,CAAC;IACtE,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC;IAErF,4EAA4E;IAC5E,4EAA4E;IAC5E,wEAAwE;IACxE,oCAAoC;IACpC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,cAAc,GAAG,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,aAAa;IAWpE,MAAM,kBAAkB,GAAc;QACpC,EAAE,IAAI,EAAE,aAAa,EAAE;QACvB,EAAE,IAAI,EAAE,aAAa,EAAE;QACvB,EAAE,IAAI,EAAE,iBAAiB,EAAE,cAAc,EAAE,EAAE,EAAE;KAChD,CAAC;IACF,MAAM,gBAAgB,GAAc;QAClC,EAAE,IAAI,EAAE,aAAa,EAAE;QACvB,EAAE,IAAI,EAAE,WAAW,EAAE;QACrB,EAAE,IAAI,EAAE,UAAU,EAAE;KACrB,CAAC;IAEF,MAAM,iBAAiB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,aAAa,CAAC,CAAC;IAC1F,MAAM,eAAe,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,UAAU,CAAC,CAAC;IAErF,wEAAwE;IACxE,MAAM,cAAc,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QAC7D,MAAM;QACN,OAAO,EAAE,kBAAkB,CAAC,GAAG,CAAC;QAChC,GAAG;KACJ,CAAC,CAAC,CAAC;IACJ,KAAK,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,cAAc,EAAE,CAAC;QACtD,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,MAAM,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,YAAY,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;QACzD,MAAM;QACN,OAAO,EAAE,gBAAgB,CAAC,GAAG,CAAC;QAC9B,GAAG;KACJ,CAAC,CAAC,CAAC;IACJ,KAAK,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,YAAY,EAAE,CAAC;QACpD,IAAI,CAAC,OAAO;YAAE,SAAS;QACvB,MAAM,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,EAAE,cAAc,EAAE,QAAQ,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC;IAC1E,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;IAE5D,sEAAsE;IACtE,OAAO,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;IACjD,MAAM,OAAO,GAAG,uBAAuB,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,CAAC,CAAC;IACnF,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,CAAC,4BAA4B,MAAM,CAAC,YAAY,CAAC,sBAAsB,CAAC,EAAE,CAAC,CAAC;IACvF,OAAO,CAAC,GAAG,CAAC,6BAA6B,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;IAEjG,IAAI,YAAY,CAAC,sBAAsB,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CACb,0CAA0C,MAAM,CAAC,YAAY,CAAC,sBAAsB,CAAC,EAAE,CACxF,CAAC;IACJ,CAAC;IAED,oCAAoC;IACpC,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC;QACtC,SAAS,EAAE,QAAQ,CAAC,EAAE;QACtB,cAAc,EAAE,aAAa;QAC7B,OAAO,EAAE,iBAAiB;KAC3B,CAAC,CAAC;IACH,IAAI,CAAC,KAAK;QAAE,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAC1F,+EAA+E;IAC/E,uFAAuF;IACvF,IACE,KAAK,CAAC,WAAW,KAAK,CAAC;QACvB,KAAK,CAAC,eAAe,KAAK,CAAC;QAC3B,KAAK,CAAC,SAAS,KAAK,CAAC;QACrB,KAAK,CAAC,QAAQ,KAAK,CAAC,EACpB,CAAC;QACD,MAAM,IAAI,KAAK,CACb,oCAAoC,IAAI,CAAC,SAAS,CAAC;YACjD,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,eAAe,EAAE,KAAK,CAAC,eAAe;YACtC,SAAS,EAAE,KAAK,CAAC,SAAS;YAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,EAAE,CACL,CAAC;IACJ,CAAC;IACD,IAAI,KAAK,CAAC,YAAY,KAAK,EAAE,EAAE,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,6CAA6C,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,CAAC,GAAG,CACT,mEAAmE,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAChG,CAAC;IAEF,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,QAAQ,CAAC;QACvC,SAAS,EAAE,QAAQ,CAAC,EAAE;QACtB,cAAc,EAAE,UAAU;QAC1B,OAAO,EAAE,iBAAiB;KAC3B,CAAC,CAAC;IACH,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,CAAC;IACxF,+EAA+E;IAC/E,6FAA6F;IAC7F,IACE,MAAM,CAAC,WAAW,KAAK,CAAC;QACxB,MAAM,CAAC,eAAe,KAAK,CAAC;QAC5B,MAAM,CAAC,SAAS,KAAK,CAAC;QACtB,MAAM,CAAC,QAAQ,KAAK,CAAC,EACrB,CAAC;QACD,MAAM,IAAI,KAAK,CACb,iCAAiC,IAAI,CAAC,SAAS,CAAC;YAC9C,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,SAAS,EAAE,MAAM,CAAC,SAAS;YAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;SAC1B,CAAC,EAAE,CACL,CAAC;IACJ,CAAC;IACD,IAAI,MAAM,CAAC,YAAY,KAAK,EAAE,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,0CAA0C,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,CAAC,GAAG,CACT,sEAAsE,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CACpG,CAAC;IAEF,uEAAuE;IACvE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;IACtC,uEAAuE;IACvE,yEAAyE;IACzE,4DAA4D;IAC5D,MAAM,UAAU,GAAwB;QACtC;YACE,EAAE,EAAE,eAAe;YACnB,cAAc,EAAE,UAAU;YAC1B,OAAO,EAAE,iBAA2C;YACpD,QAAQ,EAAE,MAAyB;YACnC,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,UAAU,CAAC;SAC1C;QACD;YACE,EAAE,EAAE,aAAa;YACjB,cAAc,EAAE,aAAa;YAC7B,OAAO,EAAE,iBAA2C;YACpD,QAAQ,EAAE,KAAwB;YAClC,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,UAAU,CAAC;SAC1C;QACD;YACE,EAAE,EAAE,kBAAkB;YACtB,cAAc,EAAE,aAAa;YAC7B,OAAO,EAAE,iBAA2C;YACpD,QAAQ,EAAE,MAAyB;YACnC,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,GAAG,EAAE,GAAG,UAAU,CAAC;SAC3C;QACD;YACE,EAAE,EAAE,mBAAmB;YACvB,cAAc,EAAE,kBAAkB;YAClC,OAAO,EAAE,iBAA2C;YACpD,QAAQ,EAAE,UAA6B;YACvC,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,GAAG,CAAC,GAAG,UAAU,CAAC;SAC1C;KACF,CAAC;IAEF,kEAAkE;IAClE,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACzE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC7C,KAAK,MAAM,CAAC,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC;QACjC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,cAAc,KAAK,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,YAAY,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,WAAW,GAAG,CAAC,GAAgE,EAAU,EAAE,CAC/F,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,cAAc,IAAI,EAAE,KAAK,GAAG,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,CAAC;IAErE,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IACvD,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,mBAAmB,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAExD,wCAAwC;IACxC,8DAA8D;IAC9D,6DAA6D;IAC7D,2DAA2D;IAC3D,iEAAiE;IACjE,MAAM,aAAa,GAAG,CAAC,kBAAkB,EAAE,aAAa,EAAE,eAAe,EAAE,mBAAmB,CAAC,CAAC;IAChG,IAAI,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,KAAK,CACb,iCAAiC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,UAAU,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CACxF,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,mFAAmF,CAAC,CAAC;IAEjG,uEAAuE;IACvE,OAAO,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC;IACrF,0EAA0E;IAC1E,2EAA2E;IAC3E,qBAAqB;IACrB,MAAM,QAAQ,GAAkB;QAC9B,MAAM,EAAE,GAAG,EAAE;YACX,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;QACjD,CAAC;QACD,OAAO,EAAE,GAAG,EAAE;YACZ,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QAClD,CAAC;QACD,QAAQ,EAAE,GAAG,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QACnD,CAAC;QACD,YAAY,EAAE,GAAG,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QACD,WAAW,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;QACxC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;QACtC,gBAAgB,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC;KAC9C,CAAC;IACF,MAAM,sBAAsB,GAAuB,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAChF,MAAM,QAAQ,GAAG,qBAAqB,CAAC;QACrC,YAAY;QACZ,WAAW;QACX,IAAI,EAAE,QAAQ;QACd,kBAAkB,EAAE,sBAAsB;KAC3C,CAAC,CAAC;IACH,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,qBAAqB,CAAC,EAAE,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;IACxF,OAAO,CAAC,GAAG,CACT,qBAAqB,MAAM,CAAC,cAAc,CAAC,eAAe,CAAC,qBAAqB,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CAC1H,CAAC;IACF,IAAI,cAAc,CAAC,gBAAgB,KAAK,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CACb,8DAA8D,MAAM,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,CACxG,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;IAE5E,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;AACrD,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,WAAW,CACxB,UAAkB,EAClB,OAIwB,EACxB,QAAc,EACd,SAAiB,EACjB,UAAkB;IAElB,IAAI,cAAc,GAAkB,CAAC,CAAC;IACtC,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,IAAI,cAAc,GAAgB,IAAI,CAAC;IACvC,IAAI,eAAe,GAAG,GAAG,CAAC;IAE1B,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,aAAa;YAChB,cAAc,GAAG,CAAC,CAAC;YACnB,eAAe,GAAG,GAAG,CAAC;YACtB,MAAM;QACR,KAAK,iBAAiB;YACpB,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;YACxC,wCAAwC;YACxC,eAAe,GAAG,GAAG,CAAC;YACtB,MAAM;QACR,KAAK,WAAW;YACd,cAAc,GAAG,CAAC,CAAC;YACnB,kBAAkB,GAAG,IAAI,CAAC;YAC1B,eAAe,GAAG,CAAC,GAAG,CAAC;YACvB,MAAM;QACR,KAAK,UAAU;YACb,cAAc,GAAG,CAAC,CAAC;YACnB,cAAc,GAAG,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;YAC3D,eAAe,GAAG,CAAC,GAAG,CAAC;YACvB,MAAM;IACV,CAAC;IAED,wEAAwE;IACxE,sEAAsE;IACtE,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,aAAa,CAAC;QAC/C,UAAU;QACV,SAAS;QACT,aAAa,EAAE,UAAU,GAAG,CAAC;QAC7B,UAAU,EAAE,GAAG,YAAY,YAAY,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,EAAE;QAC/D,IAAI,EAAE,iCAAiC;QACvC,aAAa,EAAE,EAAE;QACjB,UAAU,EAAE,kBAAkB,MAAM,CAAC,UAAU,CAAC,EAAE;QAClD,QAAQ,EAAE,KAAK,GAAG,UAAU;QAC5B,cAAc,EAAE,aAAa;KAC9B,CAAC,CAAC;IACH,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAE3C,MAAM,YAAY,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,EAAE;QAC5C,QAAQ;QACR,cAAc;QACd,kBAAkB;QAClB,cAAc;QACd,eAAe;KAChB,CAAC,CAAC;AACL,CAAC;AAED,KAAK,UAAU,OAAO;IACpB,yEAAyE;IACzE,mEAAmE;IACnE,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACjC,MAAM,MAAM,CAAC,YAAY,CAAC,UAAU,CAAC;YACnC,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE;SACzC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC;YAC/B,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE;SACxC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,YAAY,EAAE,EAAE,CAAC,CAAC;IAC7D,CAAC;IACD,yEAAyE;IACzE,IAAI,iBAAiB,EAAE,CAAC;QACtB,MAAM,MAAM,CAAC,mBAAmB,CAAC,UAAU,CAAC;YAC1C,KAAK,EAAE;gBACL,SAAS,EAAE,iBAAiB;gBAC5B,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,aAAa,EAAE,UAAU,CAAC,EAAE;gBACnD,OAAO,EAAE,iBAAiB;aAC3B;SACF,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,IAAI,EAAE;KACH,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IACtB,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAC;IACxC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC;KACD,OAAO,CAAC,KAAK,IAAI,EAAE;IAClB,IAAI,CAAC;QACH,MAAM,OAAO,EAAE,CAAC;IAClB,CAAC;IAAC,OAAO,UAAmB,EAAE,CAAC;QAC7B,OAAO,CAAC,KAAK,CAAC,kDAAkD,EAAE,UAAU,CAAC,CAAC;IAChF,CAAC;IACD,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC;AAC7B,CAAC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@derwinjs/db",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "description": "Prisma schema + migrations for Derwin's own Postgres. 14 models, project-namespaced. Per ADR-0005. Ships its own generated Prisma client (multi-platform binaries) for cross-consumer compatibility.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "type": "module",
@@ -33,8 +33,8 @@
33
33
  },
34
34
  "dependencies": {
35
35
  "@prisma/client": "^5.22.0",
36
- "@derwinjs/core": "0.4.0",
37
- "@derwinjs/sdk": "0.4.0"
36
+ "@derwinjs/core": "0.5.0",
37
+ "@derwinjs/sdk": "0.5.0"
38
38
  },
39
39
  "devDependencies": {
40
40
  "@vitest/coverage-v8": "^2.1.9",
@@ -0,0 +1,12 @@
1
+ -- Sprint 5 Phase 1 — Enable pgvector extension + migrate RAGCorpus.embedding to vector(1536)
2
+ -- The corpus is empty at v0.4.0 — DROP+ADD is safe (no data loss).
3
+ -- Index uses HNSW with cosine ops for similarity search per pgvector docs.
4
+
5
+ CREATE EXTENSION IF NOT EXISTS vector;
6
+
7
+ ALTER TABLE "derwin"."rag_corpus" DROP COLUMN IF EXISTS "embedding";
8
+ ALTER TABLE "derwin"."rag_corpus" ADD COLUMN "embedding" vector(1536);
9
+
10
+ CREATE INDEX "rag_corpus_embedding_hnsw_idx"
11
+ ON "derwin"."rag_corpus"
12
+ USING hnsw ("embedding" vector_cosine_ops);
@@ -11,9 +11,11 @@
11
11
  // 2. A multi-project broken-fixture E2E that asserts isolation
12
12
  // (added in Sprint 13 / QAP-130).
13
13
  //
14
- // pgvector convention: `embedding Bytes?` on RAGCorpus is the v1 storage type.
15
- // QAP-076 (Sprint 7 — RAG corpus add) switches it to a pgvector `vector(1536)`
16
- // column once the extension is enabled in QAP-036.
14
+ // pgvector convention: Sprint 5 Phase 1 enabled the pgvector extension and
15
+ // migrated `RAGCorpus.embedding` to `vector(1536)`. The column is typed as
16
+ // `Unsupported("vector(1536)")` because Prisma 5.22.0 has no native vector
17
+ // type — reads/writes use raw SQL via `$queryRaw` / `$executeRaw`. The HNSW
18
+ // index with `vector_cosine_ops` lives in the migration SQL.
17
19
  //
18
20
  // Multi-schema: every model + enum is in the `derwin` Postgres schema (not
19
21
  // `public`). This isolates Derwin's tables from each consumer's existing
@@ -494,16 +496,17 @@ model ClassificationTrust {
494
496
  }
495
497
 
496
498
  // Successful past fixes used as in-context examples for new dispatches.
497
- // Embedding column is Bytes for v1; QAP-076 (Sprint 7) switches to pgvector.
499
+ // Embedding column is `vector(1536)` (pgvector); Sprint 5 Phase 1 enabled the
500
+ // extension and migrated from `Bytes?`. See file header for query convention.
498
501
  model RAGCorpus {
499
502
  id String @id @default(cuid())
500
503
  projectId String
501
504
  classification String
502
505
  surface SurfaceCategory
503
506
 
504
- promptText String @db.Text // the prompt that produced the fix
505
- diff String @db.Text // the unified diff that worked
506
- embedding Bytes? // for semantic search
507
+ promptText String @db.Text // the prompt that produced the fix
508
+ diff String @db.Text // the unified diff that worked
509
+ embedding Unsupported("vector(1536)")? // pgvector Sprint 5 Phase 1 enabled the extension. Queries via raw SQL because Prisma 5.22.0 doesn't have native vector type support.
507
510
 
508
511
  fixAttemptId String // back-reference to the source attempt
509
512
  outcomeQuality Float // priority weight; declines if later usage shows problems