863e313185
3-reviewer simplify pass (reuse/quality/efficiency) findings: - cron/scheduler.py _run_job_script: the ORIGINAL that lifecycle_guard._resolve_script_path documents mirroring had the exact same unguarded expanduser() — a NUL-bearing script value survives creation (the guard treats it as nothing-to-scan) and crashed the scheduler at fire time with ValueError instead of a clean job failure. Same ingestion contract applied; regression test added. - lifecycle_guard._resolve_script_path: get_hermes_home() -> Path.home() raises RuntimeError when neither HERMES_HOME nor HOME resolves (arbitrary-UID containers); the cron entry point called it bare. Caught -> None; totality test added. - terminal_tool: stale 'cat ...' docstring updated to the bounded head -c form. - lifecycle_guard: dead 'script_text and' condition dropped (guarded by 'if not script_text: continue' directly above). Efficiency reviewer: no material findings (measured — encode/expand costs negligible vs walk I/O, no timing regression vs base).