gongxiangp2/lib/ai-model-execution-slot.ts

11 lines
702 B
TypeScript

/** Unknown results retain their retry fence, but a separately audited ended execution need not occupy a worker forever. */
export function aiModelExecutionOccupiesSlot(alias = 'v'): string {
if (!/^[a-z][a-z0-9_]*$/i.test(alias)) throw new Error('Invalid verification table alias')
return `(${alias}.status='running' OR (${alias}.status='unknown' AND NOT EXISTS (
SELECT 1 FROM ai_model_audit ended WHERE ended.action='model.verification-execution-ended'
AND ended.details->>'executionGroupId'=COALESCE(${alias}.evidence->>'executionGroupId',${alias}.id)
AND ended.details->>'originalRequestId'=${alias}.request_id
AND ended.details->'verificationIds' ? ${alias}.id
)))`
}