Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 5 additions & 1 deletion packages/orchestrator/test/several-engines.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -413,9 +413,13 @@ describe('fault isolation: one engine failing leaves the others running', () =>
// Later faults of the same streak log their message and no stack.
expect(lines.filter((l) => l.startsWith('[alpha] stack: '))).toHaveLength(1)
// The heartbeat still retries: after the fault clears, alpha recovers and dispatches.
// At least one pass, not exactly one (#555): the recovered pass's own commits
// and settlement can queue a refs or completion pass while it runs, and that
// pass starts before the heartbeat's trigger returns. Every pass before the
// heartbeat backed off, so any count above zero is the heartbeat's retry.
broken = false
await ea!.loop.trigger('heartbeat')
expect(ticks).toBe(1)
expect(ticks).toBeGreaterThanOrEqual(1)
expect((await health(a.dir)).failed).toBeUndefined()
expect(lines.some((l) => /^\[alpha\] recovered after \d fault\(s\) — engine no longer marked failed for its passes$/.test(l))).toBe(true)

Expand Down
Loading