diegosouzapw
0efaf1cca7
fix(security): post-review hardening batch — command injection, CSP, auth gaps, error sanitization, resilience
- plugin.mjs: replace execSync string-template with spawnSync arg-array (command injection)
- electron/main.js: gate unsafe-eval on !app.isPackaged instead of URL substring; merge duplicate connect-src
- budget/bulk, resilience/reset: add requireManagementAuth guard
- gemini-web, claude-web, copilot-web executors: route catch-block messages through sanitizeErrorMessage
- oauth route, agents/tasks routes: route catch-block errors through sanitizeErrorMessage
- codex.ts: return null (not error-object) from refreshCredentials on failure
- tokenRefresh.ts: safe unknown-error access in catch block
- combo.ts: reset exhaustedProviders per set-retry iteration so providers get a second chance
- circuitBreaker.ts: persist and restore lastFailureKind via options JSON column
2026-05-20 11:11:13 -03:00
..
2026-05-14 06:19:02 -03:00
2026-04-27 20:00:10 -03:00
2026-05-20 09:12:49 -03:00
2026-05-14 13:00:15 -03:00
2026-05-04 02:03:10 -03:00
2026-05-15 12:51:07 -03:00
2026-05-15 12:51:07 -03:00
2026-05-20 11:11:13 -03:00
2026-05-10 10:41:16 -03:00
2026-05-12 19:50:07 -03:00
2026-04-17 23:21:02 -03:00
2026-05-20 11:11:13 -03:00
2026-05-15 03:25:22 -03:00
2026-05-20 11:11:13 -03:00
2026-05-14 10:38:13 -03:00
2026-05-16 00:27:56 -03:00
2026-05-16 00:27:56 -03:00
2026-05-20 09:12:49 -03:00
2026-05-11 21:49:32 -03:00
2026-05-19 09:50:51 -03:00
2026-05-20 11:11:13 -03:00
2026-04-28 02:41:19 -03:00
2026-04-24 07:00:21 -03:00
2026-05-16 21:47:40 -03:00
2026-05-01 16:11:32 -03:00
2026-05-20 02:05:50 -03:00
2026-05-07 00:01:54 +07:00
2026-05-09 21:05:08 -03:00
2026-04-28 02:41:19 -03:00
2026-04-24 07:00:21 -03:00
2026-04-28 02:41:19 -03:00
2026-04-28 02:41:19 -03:00
2026-04-24 09:22:46 -03:00
2026-05-11 15:51:05 -03:00
2026-03-22 20:29:06 -03:00
2026-04-17 11:56:52 -03:00
2026-05-20 02:05:50 -03:00
2026-05-18 17:42:09 -03:00
2026-05-10 00:00:11 -03:00
2026-05-15 10:47:39 -03:00