( requestId: string, _agentName?: string, teamName?: string, )
| 542 | * @returns The permission response, or null if not yet resolved |
| 543 | */ |
| 544 | export async function pollForResponse( |
| 545 | requestId: string, |
| 546 | _agentName?: string, |
| 547 | teamName?: string, |
| 548 | ): Promise<PermissionResponse | null> { |
| 549 | const resolved = await readResolvedPermission(requestId, teamName) |
| 550 | if (!resolved) { |
| 551 | return null |
| 552 | } |
| 553 | |
| 554 | return { |
| 555 | requestId: resolved.id, |
| 556 | decision: resolved.status === 'approved' ? 'approved' : 'denied', |
| 557 | timestamp: resolved.resolvedAt |
| 558 | ? new Date(resolved.resolvedAt).toISOString() |
| 559 | : new Date(resolved.createdAt).toISOString(), |
| 560 | feedback: resolved.feedback, |
| 561 | updatedInput: resolved.updatedInput, |
| 562 | permissionUpdates: resolved.permissionUpdates, |
| 563 | } |
| 564 | } |
| 565 | |
| 566 | /** |
| 567 | * Remove a worker's response after processing |
no test coverage detected