Files
healer-man/docs/ENEMY_UTILITY_CONTROL_COMPLETION_2026-10-06.md
T
2026-10-06 22:25:34 -04:00

9.2 KiB
Raw Blame History

Enemy utility and control completion — 2026-10-06

Implemented behavior

Ordinary source Creature self-casts can import Critical Block 47294–47296 through a separate guarded path. The known template, identical caster/target, complete profile/rank signature and default-core aura 107 applicability proof are required. Aura107 spell modifiers are no-ops for non-player targets on that audited default path; aura 253 supplies critical-block chance. The generic importer and Deterrence remain gated. No source creature assignment was found, so this pass assigns no new NPC cast. A labeled synthetic runtime fixture proves permanent application, critical blocking, no damage and reset cleanup.

Exact WoW335 Shield Bash 72 now rolls one ordinary-NPC block stage before the player and companion utility effect loops. Full blocking cancels the entire recipient effect list while retaining the accepted cast's cost and cooldown. A zero-amount cast result carries the block flag; no damage packet is fabricated. Existing facing, casting, control, no-block, native, summon and character-defender gates remain authoritative. An actively casting NPC cannot block, so an unblocked interrupt still uses the existing interruption path. This stage adds block only; other utility hit/avoidance behavior is unchanged. Additional ranks, profiles and unknown custom attributes are not inferred.

Source shouts 5246/19134 apply parent aura 31's +25% movement speed alongside their caster-centered fear. Player and companion movement consume the strongest active target-local tagged bonus. Fear and speed share the parent aura's adjusted lifetime, source-caster refresh and caster-removal persistence. Baseline durations remain 5/4 seconds in Ascension and 8/6 seconds in Epoch. The source core adjusts one shared parent aura duration; a fear-duration modifier therefore shortens its speed rider too.

All four parent/child rows carry spell-level MECHANIC_FEAR. Whole-spell fear immunity rejects their controls and riders before per-effect immunity checks. Stun immunity alone strips 20511's stun effect while preserving Ascension's separate +15% physical-damage-taken rider. Epoch has no such physical rider. Compiler pins now include spell mechanic and all eight raw attribute words; regenerated campaign JSON is byte-for-byte identical to the starting snapshot.

Source boundaries

The stance/Thrash audit rechecks four active world tables against both locks at world commit 4d9d1d4b5723e819c5c390f6ca1177283dbfb8e3, separately from the read-only historical core e822d718 behavior reference. Ascension passive 7376's third effect is fixed DUMMY +42, with no recovered handler/registration; the core correction only suppresses caster procs. It remains metadata-only. Targorr 1696 is SmartAI. Its three source rows cast 674, cast 8599 at low health, and talk; no row schedules 3391. The template spell list establishes Thrash availability, and CombatAI's separate scheduler cannot supply SmartAI timing. The existing simulator cadence is retained and remains explicitly approximate.

The existing player/party/summon fear policy immobilizes rather than reproducing source fleeing AI. Eligible summons can receive the source aura, but their control loop returns before movement for that shared lifetime. General Magic hit/resist/deflect, already-active aura purge on an unidentified immunity grant, wider utility full hit tables, Deterrence siblings, native custom equipment/rates/prerequisites and broader weapon/proc formulas remain separate gaps. The shout rows alone do not prove an immunity grant's IMMUNITY_PURGES_EFFECT flag. Shield Bash retains trigger 29703 in its parent descriptor, but the Daze child is absent from the runtime catalog; this pass cancels trigger execution on full block without claiming a live child application.

Source reports: Critical Block imports, utility blocking, shout speed/immunity, and stance/Thrash audit.

Validation

The directly affected helper/runtime selection covers 96 passing tests across 15 files, including the final 15-test shout file and four new actual utility runtime tests. Runs overlap and are not additive. The player utility fixture proves one block result, normal completion telemetry, retained cost/cooldown and no damage. The companion fixture is a synthetic accepted pending cast completed through the real executor. Casting-defender interruption and all excluded defender types are covered. Six compiler source-pin Node tests pass, including all shout attribute words and Critical Block sibling drift. Ready-five passes 7 Vitest and 20 Python tests, and avatar checks pass 56 tests. The production build passes TypeScript with 8GB memory, Vite, environment audits, compression and release bundle verification. Existing prehooks regenerate the same 9-boss/23-item loot catalog; this task adds no loot wiring. No full suite or all-class sweep runs.

Luna's read-only review finds no confirmed defect in the shared block, Critical Block, shout or compiler integration. Final utility tests and an 8GB TypeScript check pass after adding their fixtures. No production source changes follow the final build/freeze.

One final live check

Run playtest-artifacts/stockade-weapon-utilities/20261006-141251022/ enters Cellblock Rush normally with a UI-created Discipline Priest and four Ready companions. Isolated pre-entry preparation sets level 30; gameplay uses ordinary movement, targeting, healing and party commands with read-only telemetry. No Boss Testing, teleports, combat-state writes or enemy/aura seeding occur.

The seeded boss is Targorr the Dread, entry 1696, source/live creature-84027. Native killed-boss progress and the visible results overlay agree on 1/1 in 03:09.2. No player or party deaths occur. Seven effective player healing events total 2,337, with 95 overheal. The result certifies this one-boss slice; the harness's historical full-clear field names do not mean the five-boss full Stockade campaign was tested.

The committed recorder retains 749 consecutive events, IDs 9–757, with no gaps, errors, discarded events/states or coverage issues. Source NPC hand results include 56 mainhand, four offhand and two Thrash extra-mainhand outcomes; the extra swings retain source 3391. They demonstrate the existing simulator schedule/effect, not a source-proven Targorr cadence. Player/party hand results total 172. Three committed Disarm windows contain seven hand results; this overlap is evidence of actual events, not independent proof of contribution formulas. Three Disarm and 42 Wound snapshots are observed. Block/shout and Bloodlust aura applications are unobserved; no live claim is made for them. Critical Block has no real source creature assignment in this catalog.

Root inspects roster, dungeon equipment silhouette, mid-route and the native results image (bite-sized-stormwind-stockade-boss-arrival.png). Player/party bodies and staff, shield and blade silhouettes are visible. Overlap and HUD occlusion prevent a complete per-companion gear inspection. There are no page exceptions; the sole outer console item is a favicon 404.

The build freeze is artifacts/enemy-utility-control-2026-10-06/corrected-build-20261006-140236745/: 5,967 files, 118,061,079 bytes, aggregate SHA-256 8cf9513613aa3ef6a0a64de392e90521b0349d85311f930ba8808e868d6867d9. The unchanged isolated content copy is reused from the earlier fully verified freeze: 27,571 objects, 6,489,632,021 bytes, manifest SHA-256 ac0fa2a867ba0a495c172de2b89532d69b32d56d032482b26020ce2d189f074b. The new freeze rehashes the complete build and both content manifests; it does not recopy unchanged content objects. Before/after fingerprints agree. The harness verifies 2,124 actually served manifest-referenced hash-addressed objects with zero integrity failures. Raw network bodies are not retained; evidence joins recorded URLs/status with the immutable local source files.

The independent evidence-audit follow-up also fails with Luna capacity. Root runs root-evidence-audit.cjs in the current live evidence folder, rehashing all 5,967 frozen files, seven recorded loaded chunks and all 2,124 served manifest objects (77,019,550 bytes), with zero failures. It independently recomputes consecutive event IDs, native one-boss completion, zero deaths and the error boundary from retained artifacts. root-evidence-audit.json labels this root fallback explicitly; it is not presented as a completed subprocess audit. No higher-tier subprocess is selected.

All subprocesses use GPT-6 Luna with extra-high reasoning. The utility runtime follow-up failed because that model was at capacity; root completed its four tests directly without upgrading a subprocess. Level cap 80, Ready-five certification and loot scope remain unchanged. The shared workspace contains concurrent edits; no staging, commit or deployment is part of this pass. Historical source trees remain read-only.

Final npm run release:check passes 478 changed paths, including untracked files. Game and vault diffs are checked separately; all 13 task documents pass EOF and trailing-whitespace checks. Canonical notes and the closed worklog record the implemented behavior and remaining boundaries.