fix(consult): preserve streaming across disconnects
This commit is contained in:
@@ -30,13 +30,13 @@ test("standard consultation resolves and settles the session-pinned model versio
|
||||
assert.match(consultRoute, /modelConfigVersion: selectedModel\.configVersion/);
|
||||
});
|
||||
|
||||
test("standard consultation awaits real usage before its only permanent settlement", () => {
|
||||
test("standard consultation awaits real usage before durable response settlement", () => {
|
||||
assert.doesNotMatch(consultRoute, /recordActualUsage|void usage\.then/);
|
||||
assert.doesNotMatch(consultRoute, /inputTokens: 0,[\s\S]*outputTokens: 0,[\s\S]*costMicrousd: 0/);
|
||||
assert.match(consultRoute, /async function complete\(usage: Promise<\{ inputTokens\?: number; outputTokens\?: number \}>\)/);
|
||||
assert.match(consultRoute, /async function usagePayload\(usage: Promise<\{ inputTokens\?: number; outputTokens\?: number \}>\)/);
|
||||
assert.match(consultRoute, /const resolved = await usage;/);
|
||||
assert.match(consultRoute, /await completeUsage\(accounting, userId, requestId, \{[\s\S]*inputTokens,[\s\S]*outputTokens,[\s\S]*costMicrousd/);
|
||||
assert.match(consultRoute, /const completeWithUsage = \(\) => complete\(result\.totalUsage\)/g);
|
||||
assert.match(consultRoute, /const actualUsage = await usagePayload\(usage\);[\s\S]*p_actual_usage: actualUsage/);
|
||||
assert.equal(consultRoute.match(/result\.totalUsage/g)?.length, 4);
|
||||
});
|
||||
|
||||
test("standard consultation forwards its stable reservation request as the usage event key", async () => {
|
||||
@@ -57,7 +57,8 @@ test("standard consultation forwards its stable reservation request as the usage
|
||||
await completeUsage(accounting, "00000000-0000-4000-8000-000000000001", eventKey, usage);
|
||||
|
||||
assert.deepEqual(calls.map((call) => (call.p_actual_usage as { eventKey: string }).eventKey), [eventKey, eventKey]);
|
||||
assert.match(consultRoute, /completeUsage\(accounting, userId, requestId, \{[\s\S]*eventKey: requestId,/);
|
||||
assert.match(consultRoute, /eventKey: requestId,/);
|
||||
assert.match(consultRoute, /const actualUsage = await usagePayload\(usage\);[\s\S]*p_actual_usage: actualUsage/);
|
||||
assert.doesNotMatch(consultRoute, /eventKey:\s*(?:globalThis\.)?crypto\.randomUUID\(\)/);
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user