Skip to content

Commit 6130b70

Browse files
committed
test(server): assert ordinal read ordering without sql instrumentation
1 parent cc764d5 commit 6130b70

1 file changed

Lines changed: 3 additions & 36 deletions

File tree

‎apps/server/src/orchestration-v2/ProjectionStore.test.ts‎

Lines changed: 3 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,6 @@ import * as Layer from "effect/Layer";
3434
import * as Schema from "effect/Schema";
3535
import * as Tracer from "effect/Tracer";
3636
import * as SqlClient from "effect/sql/SqlClient";
37-
import * as Statement from "effect/sql/Statement";
3837
import { projectThreadAwarenessV2 } from "@t3tools/shared/agentAwareness";
3938

4039
import * as SqlitePersistence from "../persistence/Sqlite.ts";
@@ -2127,39 +2126,15 @@ it.layer(layerTest)("ProjectionStoreV2", (it) => {
21272126
);
21282127
yield* insertMessageItem("null-id", threadId, -2, null);
21292128
yield* insertMessageItem("missing-id", threadId, -3, undefined);
2130-
const ordinalReads: Array<readonly [string, ReadonlyArray<unknown>]> = [];
2131-
const recordOrdinalReads: Statement.Transformer = (statement) => {
2132-
const compiled = statement.compile();
2133-
if (compiled[0].includes("MIN(ordinal) AS ordinal")) ordinalReads.push(compiled);
2134-
return Effect.succeed(statement);
2135-
};
21362129
const readMessageIds = (filter?: ProjectionStore.ProjectionRecordFilter) =>
2137-
projectionStore.getThreadRecords(threadId, ["messages"], filter).pipe(
2138-
Effect.map(({ messages }) => messages.map((message) => message.id)),
2139-
Effect.provideService(Statement.CurrentTransformer, recordOrdinalReads),
2140-
);
2141-
// Re-run each recorded ordinal read to count the groups it produced.
2142-
const takeOrdinalGroups = () =>
2143-
Effect.forEach(ordinalReads.splice(0), ([query, params]) =>
2144-
sql
2145-
.unsafe<{ readonly message_id: string | null; readonly ordinal: number }>(query, params)
2146-
.pipe(
2147-
Effect.map((rows) =>
2148-
rows.toSorted((left, right) =>
2149-
String(left.message_id).localeCompare(String(right.message_id)),
2150-
),
2151-
),
2152-
),
2153-
);
2130+
projectionStore
2131+
.getThreadRecords(threadId, ["messages"], filter)
2132+
.pipe(Effect.map(({ messages }) => messages.map((message) => message.id)));
21542133
assert.deepEqual(yield* readMessageIds(), [lastMessageId, firstMessageId]);
2155-
assert.equal(ordinalReads.length, 1);
2156-
const unfilteredOrdinalRead = ordinalReads.splice(0)[0]!;
2157-
assert.equal(unfilteredOrdinalRead[0].includes("json_each"), false);
21582134
assert.deepEqual(yield* readMessageIds({ messageRoles: ["user", "assistant"] }), [
21592135
lastMessageId,
21602136
firstMessageId,
21612137
]);
2162-
assert.deepEqual(ordinalReads.splice(0), [unfilteredOrdinalRead]);
21632138
for (const filter of [
21642139
{
21652140
messageIds: [
@@ -2177,17 +2152,9 @@ it.layer(layerTest)("ProjectionStoreV2", (it) => {
21772152
},
21782153
]) {
21792154
assert.deepEqual(yield* readMessageIds(filter), [lastMessageId, firstMessageId]);
2180-
assert.deepEqual(yield* takeOrdinalGroups(), [
2181-
[
2182-
{ message_id: firstMessageId, ordinal: 1 },
2183-
{ message_id: lastMessageId, ordinal: 0 },
2184-
],
2185-
]);
21862155
}
21872156
assert.deepEqual(yield* readMessageIds({ messageIds: [] }), []);
2188-
assert.deepEqual(yield* takeOrdinalGroups(), []);
21892157
assert.deepEqual(yield* readMessageIds({ messageIds: [firstMessageId] }), [firstMessageId]);
2190-
assert.deepEqual(yield* takeOrdinalGroups(), []);
21912158
yield* sql`
21922159
DELETE FROM orchestration_v2_projection_turn_items
21932160
WHERE turn_item_id LIKE 'turn-item:bounded-sql-history:ordinal-%'

0 commit comments

Comments
 (0)