Commit e2c9992
fix(gitagent+eval): capture the real answer, not gitclaw status lines
gitagent (gitclaw) emits lifecycle status messages ("Agent X started/finished")
as plain text around the real answer and, unlike the Claude SDK, never sends a
`result` frame. So output-capturing consumers fell back to the last text line —
the trailing "Agent X finished" status — instead of the answer. Surfaced in the
Simulation Engine: a gitagent agent that answered "4" was scored against
"Agent agent-designer finished".
- engine-gitagent: track the real assistant text (extractAssistantText already
ignores status lines) and emit a synthetic `result` frame at end-of-turn,
mirroring engine-deepagents.
- eval-runner: defensively skip "Agent X started/finished" lines in the
last-text fallback, so it works even before the engine fix is everywhere.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>1 parent e2033fb commit e2c9992
2 files changed
Lines changed: 20 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
296 | 296 | | |
297 | 297 | | |
298 | 298 | | |
299 | | - | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
| 302 | + | |
| 303 | + | |
300 | 304 | | |
301 | 305 | | |
302 | 306 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
156 | 156 | | |
157 | 157 | | |
158 | 158 | | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
159 | 165 | | |
160 | 166 | | |
161 | 167 | | |
| |||
181 | 187 | | |
182 | 188 | | |
183 | 189 | | |
| 190 | + | |
184 | 191 | | |
185 | 192 | | |
186 | 193 | | |
| |||
194 | 201 | | |
195 | 202 | | |
196 | 203 | | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
197 | 212 | | |
198 | 213 | | |
199 | 214 | | |
| |||
0 commit comments