Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 | // lib/feedback/actions.ts import { Action, ActionResult } from './types'; export async function execute(action: Action): Promise<ActionResult> { const started = performance.now(); try { switch (action.kind) { case 'ENABLE_CACHE': // Simulated operation await sleep(50); break; case 'ADJUST_RATE': await sleep(30); break; case 'ROLLBACK': await sleep(70); break; case 'DISABLE_FEATURE': case 'RAISE_LIMIT': await sleep(40); break; } return { actionId: action.id, ok: true, latencyMs: performance.now() - started, }; } catch (e: any) { return { actionId: action.id, ok: false, latencyMs: performance.now() - started, error: String(e), }; } } function sleep(ms: number) { return new Promise((res) => setTimeout(res, ms)); } |