11 lines
702 B
TypeScript
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
|
|
)))`
|
|
}
|