Repository navigation
Trajectory step 3: tool.call events from native session logs - #593
Conversation
There was a problem hiding this comment.
Round 1 — reviewed head 02b133bf — reviewer hermes/gpt-5.6-terra.
terra
Advisory findings from outerloop — the code owner decides. Reply to disagree; the outerloop:no-review label opts this PR out.
Verdict: 2 blocking, 1 advisory.
3 findings attached to the lines below.
Tool-call retention duplicates resumed-session history and can retain non-repo paths or patch text.
There was a problem hiding this comment.
Round 2 (re-run on the same head) — reviewed head 02b133bf — reviewer summarizer:hermes/gpt-5.6-terra over coverage+credentials+deployment+general+lifecycle+prose.
terra
Advisory findings from outerloop — the code owner decides. Reply to disagree; the outerloop:no-review label opts this PR out.
Verdict: 3 blocking, 1 advisory.
4 findings attached to the lines below.
Merged four findings. Rejected as duplicates: coverage, deployment, and lifecycle each independently reported the resumed-session duplication at src/outerloop/tool_calls.py:274; credentials and lifecycle each independently reported the 8 MiB truncation at :245; general and prose each independently reported out-of-repository path retention at :87. No substantive findings were rejected as mistaken.
…ec-only script command, full retained log
There was a problem hiding this comment.
Round 3 — reviewed head 8ce6ee96 — reviewer hermes/gpt-5.6-terra.
terra
Advisory findings from outerloop — the code owner decides. Reply to disagree; the outerloop:no-review label opts this PR out.
Verdict: 1 blocking, 0 advisory.
1 finding attached to the lines below.
The parser can omit tool calls from a configured larger retained log.
There was a problem hiding this comment.
Round 4 — reviewed head 4cde0e7f — reviewer hermes/gpt-5.6-terra.
terra
Advisory findings from outerloop — the code owner decides. Reply to disagree; the outerloop:no-review label opts this PR out.
Verdict: nothing blocking — 1 advisory note.
1 finding attached to the lines below.
One advisory finding: resumed logs duplicate calls that do not carry an ID.
Trajectory step 3: what the agent did inside a session.
src/outerloop/tool_calls.pyparses the kernel's retained, redacted copy of the native session log, host-side, never the raw home file.tool_use/tool_resultparts.function_call,custom_tool_calland their outputs, including newer Codex'sexecscript tool, whose input is the script itself.{tool, files, command (first 200 chars), exit, ok}. No file contents or tool output are kept.session.end, the kernel appends onetool.callevent per call. This step is best-effort: a failure logs and never breaks the session.outerloop trajectorysummary:tool calls: N (Bash 12, Edit 5). PR body: a short## Processsection with the total and top tools, omitted when there are none.tool.call.Checked on real logs (counts only, nothing printed):
execscript-tool shape. That's fixed and tested here, and the rollout now gives 3 calls with commands and outcomes.Not checked: a rollout from the pinned Codex 0.160.
Gate: ruff check, ruff format --check, mypy, pytest (3077 passed, 7 skipped).
Built by DeepSeek-V4.1-Flash, with the Codex
execfix by Claude; reviewed by Claude.