Apple
0603184524
feat(sofiia-console): add safe script executor for allowlisted runbook steps
- adds safe_executor.py: REPO_ROOT confinement, strict script allowlist,
env key allowlist (STRICT/SOFIIA_URL/BFF_A/BFF_B/NODE_ID/AGENT_ID),
stdin=DEVNULL, 8KB output cap, timeout clamp (max 300s), non-root warn
- integrates script action_type into runbook_runner: next_step handles
http_check and script branches; running_as_root -> step_status=warn
- extends runbook_parser: rehearsal-v1 now includes 3 built-in script steps
(preflight, idempotency smoke, generate evidence) after http_checks
- adds tests/test_sofiia_safe_executor.py: 12 tests covering path traversal,
absolute path, non-allowlist, env drop, timeout, exit_code, mocked subprocess
Made-with: Cursor
2026-03-03 04:57:22 -08:00
..
2026-02-20 17:57:40 +01:00
2026-02-09 08:46:46 -08:00
2026-02-21 17:02:55 +01:00
2026-03-01 06:26:17 -08:00
2026-01-28 06:40:34 -08:00
2026-01-28 06:40:34 -08:00
2026-03-01 01:37:13 -08:00
2026-01-17 08:16:37 -08:00
2026-01-17 08:16:37 -08:00
2026-02-19 00:14:12 -08:00
2026-02-19 00:14:12 -08:00
2026-02-19 00:14:18 -08:00
2026-02-09 08:46:46 -08:00
2026-02-09 08:46:46 -08:00
2026-02-27 03:09:12 -08:00
2026-02-09 08:46:46 -08:00
2026-01-17 08:16:37 -08:00
2026-02-09 08:46:46 -08:00
2026-01-28 06:40:34 -08:00
2026-02-09 08:46:46 -08:00
2026-02-09 08:46:46 -08:00
2026-02-09 11:46:15 -08:00
2026-02-27 03:20:13 -08:00
2026-02-27 05:24:09 -08:00
2026-02-27 05:24:09 -08:00
2026-02-19 00:14:12 -08:00
2026-02-19 00:14:12 -08:00
2026-02-19 00:14:12 -08:00
2026-02-19 00:14:12 -08:00
2026-02-09 08:46:46 -08:00
2026-02-20 17:57:40 +01:00
2026-01-28 06:40:34 -08:00
2026-01-28 06:40:34 -08:00
2026-02-09 08:46:46 -08:00
2026-01-28 06:40:34 -08:00
2026-03-01 01:37:30 -08:00
2026-02-09 08:46:46 -08:00
2026-02-19 00:14:18 -08:00
2026-03-03 04:57:22 -08:00
2026-02-27 04:16:16 -08:00
2025-11-17 05:24:36 -08:00