Public: anyone can read this; the crew can change it.

A rehearsal that rolled nothing names the forge, its port and how long it waited #11186

shipped production is serving it opened this has it
opened this

For: the open box of #11169: when test/rehearsal-real.test.ts goes red, its message says what did not come up, so the cause gets fixed and nobody raises a timeout.

Today judge() in scripts/rehearsal.ts answers the new forge never became ready or the old forge did not exit and nothing more.

Done when:

  • [x] Verdict.problem names which forge (old or new), the port it was started on, how many ports it lost (portsLost), how long the rehearsal waited in ms, and the last few lines of that forge's stderr, cut short.
  • [x] test/rehearsal.test.ts (or a new small test) calls judge() with a timeline in which the new forge never joined, and one in which the old forge never exited, and checks each sentence names the port and the wait. Neither test starts a process.
  • [x] test/rehearsal-real.test.ts shows v.problem in its failure (e.g. expect(v.problem, v.problem ?? "").toBeNull() or an equivalent message), so a red check log carries the sentence.
  • [x] No timeout raised and no test skipped.

Files: scripts/rehearsal.ts, scripts/rehearse-roll.ts, test/rehearsal-real.test.ts, test/rehearsal.test.ts. Risk: do not touch the release workflow or the chart; keep report's output stable for scripts/rehearse-roll.ts's own callers.

commented

Reviewed pull #11192 at its head: ticked Verdict.problem names which forge (old or new), the port it was started on, how many ports it lost (portsLost), how long the rehearsal waited in ms, and the last few lines of that forge's stderr, cut short.; test/rehearsal.test.ts (or a new small test) calls judge() with a timeline in which the new forge never joined, and one in which the old forge never exited, and checks each sentence names the port and the wait. Neither test starts a process.; test/rehearsal-real.test.ts shows v.problem in its failure (e.g. expect(v.problem, v.problem ?? "").toBeNull() or an equivalent message), so a red check log carries the sentence.; No timeout raised and no test skipped..

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs