Why
The resolved absolute host filesystem path is logged to stderr on every fix loop invocation, leaking internal directory layout to any system that captures process output — terminal recordings, CI logs, or observability pipelines.
Current state
loops/fix.py line 313: log.info("[fix] issue #%s in %s", issue_number, project_path) where project_path is the expanded absolute path (e.g., /home/user/Repos/ooloth/agency-1). This appears in stderr on every run.
Ideal state
- The log statement records only the issue number; the host filesystem path is not echoed to stderr.
- No absolute path appears in any log or stderr output from the fix loop.
Starting points
loops/fix.py line 313 — the log.info("[fix] issue #%s in %s", issue_number, project_path) call
QA plan
- Run a fix loop invocation and capture stderr.
- Confirm no absolute filesystem path appears in the captured output.
- Confirm the issue number still appears for traceability.
Done when
fix.py emits no absolute filesystem path in any log or stderr output.
Why
The resolved absolute host filesystem path is logged to stderr on every fix loop invocation, leaking internal directory layout to any system that captures process output — terminal recordings, CI logs, or observability pipelines.
Current state
loops/fix.pyline 313:log.info("[fix] issue #%s in %s", issue_number, project_path)whereproject_pathis the expanded absolute path (e.g.,/home/user/Repos/ooloth/agency-1). This appears in stderr on every run.Ideal state
Starting points
loops/fix.pyline 313 — thelog.info("[fix] issue #%s in %s", issue_number, project_path)callQA plan
Done when
fix.pyemits no absolute filesystem path in any log or stderr output.