The engine no longer rebuilds its recommendation from scratch every tick. It commits a plan and re-derives it on a named trigger. That buys something Hekili structurally cannot offer — it can say why a recommendation changed — and costs something Hekili never has to pay, since a committed plan can outlive the state that justified it. Most of this release is the work of making that trade honest.
Every defect below came out of a live flight recording rather than a reading of the code.
A plan could outlive the tick that built it
Reported as "the model is behind it". One bug wearing five hats. worldChangedSince skipped its own comparison when the plan had no baseline, so a plan built while combo points were unreadable could never be invalidated by combo points again. The castability filter ran only on freshly-derived queues, so a held plan published a spell you had talented away. And the eligible rule set had no trigger at all.
A gutted plan is a stale plan
Reported as "it was just doing nothing most of the time". At login the known-spell probe has not finished, so the priority list correctly fails open and admits a rule for a spell you do not own. Once the probe completed, the filter stripped that entry out of the held plan every tick — and because it was position 1, publishing the remainder meant publishing nothing. The bar sat inert while you pressed buttons at it. It now re-derives on the spot under a named reason.
The bar stopped going empty
- The confidence truncation is retired — length was never the signal.
- The fallback is an APL walk, not a hardcoded filler. A bar that only ever answers Sinister Strike gets Sinister Strike cast at it, and the observation channels starve.
- "It's some dude's face with a blue icon" — unresolvable art rendered
FileDataID134400, which since Blizzard stopped naming icons now points at whatever happens to live there.
Under the hood
One test harness with a single entry point running 62 suites; merging the two WoW API stubs exposed four fidelity bugs that had been making whole categories of assertion vacuous. The castability filter now names its drop reason. Twelve further defects fixed from live traces.
Gate: 511 passing. Full detail in CHANGELOG.md.
Installing
Extract Tuono-v3.0.0.zip into World of Warcraft\_retail_\Interface\AddOns\.
Tuono is not an install-and-play rotation helper. It is the substrate that makes a rotation assistant possible again on a client that removed the state those assistants were built on, and it has a steep configuration curve.