Commit graph

2 commits

Author SHA1 Message Date
Janpeter Visser
0b5a044ea5 feat(logs): per-job log-symlink jobs/<job_id>.log -> runs/<ts>.log (IDEA-063)
Run-logs in /var/log/agent/runs/ zijn timestamp-named, dus de output van
een specifieke job was alleen via grep te vinden. De map jobs/ bestond al
maar werd niet gevuld.

- run-agent.sh: geeft het run-log-pad door als RUN_LOG env-var aan
  run-one-job.ts.
- run-one-job.ts: legt direct na de claim een symlink
  jobs/<job_id>.log -> ../runs/<ts>.log. Relatief pad (overleeft de
  host bind-mount), best-effort (faalt de job nooit over een log-gemak).
- log-cleanup.sh: ruimt dangling per-job symlinks op met `find -xtype l`
  — nodig omdat rotate-logs.sh het doel na 24u gzipt (.log -> .log.gz)
  of na 30d verwijdert, en de bestaande `-type f` cleanup symlinks niet
  raakt.

Functioneel geverifieerd: symlink resolveert, dangling-prune werkt,
`-type f` negeert de symlink (geen voortijdige delete). run-one-job.ts
parseert schoon (node --check + type-strip).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 19:22:40 +02:00
Madhura68
847ba96870 fix(entrypoint): ensure_writable bind-mounts + add log-cleanup (>2d)
- entrypoint.sh: chown → chmod a+rwX → fail-fast met diagnostiek voor
  AGENT_STATE_DIR en AGENT_LOG_DIR. Lost stille state.json permission
  denied op QNAP-share op (NAS-ACL blokkeert chown vanuit container).
- bin/log-cleanup.sh: nieuwe hard-delete >2d (env-tunable) naast de
  conservatievere rotate-logs.sh (gzip 24u, delete 30d).
- run-agent.sh: roept log-cleanup.sh aan bij startup en elke iteratie.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-05 16:18:10 +02:00