"work: " + report,
"reply: Noted.",
}, test.Log(t))
+ require.Equal(t, Event{
+ Kind: "work",
+ ID: 4,
+ Text: report,
+ Source: name,
+ Status: subagentFinished,
+ }, test.events.LastEvent("work"))
var first, second *ModelFakeCall
for n := range server.Calls() {
<-arrived
report := subagentReport("GreenOtter", []string{"It is done."})
- test.loop.Report(report, false)
+ test.loop.Report("GreenOtter", report, subagentFinished)
close(release)
test.events.WaitFor(t, "idle", 1)
server := newModelFake(t)
test := newTestTurnLoop(t, server)
report := subagentReport("GreenOtter", []string{"failed: context canceled"})
- test.loop.Report(report, true)
+ test.loop.Report("GreenOtter", report, subagentStopped)
test.events.WaitFor(t, "work", 1)
time.Sleep(50 * time.Millisecond)
"work: [" + name + "]\nfailed: model call: HTTP 400: " + subagentTestFullContext + "\n\nFull chat: zoom(\"" + name + "\")",
"reply: It failed.",
}, test.Log(t))
+ require.Equal(t, subagentFailed, test.events.LastEvent("work").Status)
}
func TestSubagentHasItsOwnEffortAndNoSpawn(t *testing.T) {
"note: Stopped by the user: " + name + ".",
"work: " + subagentReport(name, []string{"stopped"}),
}, test.Log(t))
+ require.Equal(t, subagentStopped, test.events.LastEvent("work").Status)
log, err := subagent.Show()
require.NoError(t, err)