10 KiB
Control and utility continuation — 2026-10-06
Lichborne now uses exact source-backed player/companion cast allowances and named-shout purge. Kick and Pummel join Shield Bash's source-bound ordinary-NPC full blocking. Player weapon autos respect pacify. Deterrence's complete linked source package is audited; missing runtime inputs remain explicit.
Implemented behavior
enemyControlImmunityPurge.tsbinds Lichborne 49039 to its selected WoW335 identity, class, retained raw attributes and three Aura77 scalar signatures. Explicit fear/stun/confuse cast permissions are separate from purge. Player and configured companion casts remove only the four named FEAR-mechanic shout auras, including 20511's stun/rider. Known generic fear/stun/confuse can permit Lichborne but remain active and keep the actor controlled. Unknown source controls and unsupported generic sleep fail closed. Berserker Rage retains its narrower behavior. Existing Fear/Sleep immunity metadata is consumed; Charm is source-proven but has no runtime immunity value.partyRuntime.tsselects a learned, source-proven escape ability for its owner, retaining target validity, costs and cooldowns. Lichborne's source GCD is zero: it neither waits for nor clears another active GCD. Retained action-blocking control keeps the companion holding.enemyUtilitySpellBlocking.tsbinds exact WoW335 Shield Bash 72, Kick 1766 and Pummel 6552 to identity/class/profile/raw metadata and the complete projected effects. Only source-bound ability validation reconstructs the two audited custom bits; an unbound raw disposition without proof falls back. Foreign profiles/ranks, modified effects/wrappers, native actors/targets and nonordinary recipients cannot borrow the contracts. Full block suppresses effects while committing cost/cooldown, emits a zero-damage blocked result and has no critical-block roll. A nonmelee-casting defender cannot block; real interruption and the source school lockout remain.abilityCatalog.tskeeps the saved publicrogue-kickidentity and only its imported five-second interrupt. The generic merge previously attached prototype damage and a second four-second interrupt to this exact source row. Only that known merge changes. Pummel retains its four-second lockout and level 38 unlock. Tests use level 40 actors and pinned Kam Deepfury at level 25, with deterministic rolls and synthetic health/cast preparation.combatStore.tssuppresses main/offhand autos and the owned Scout ranged scheduler while that actor has an active pacified tag. Target selection persists; expiry resumes ordinary cadence. Another actor's aura cannot suppress the player. Accepted-aura scheduler fixtures do not claim a live Deterrence cast or native readiness promotion.
Source and remaining limits
Exact client/core evidence: Lichborne,
utility extension and
Deterrence. Historical inputs were
read only. Pinned spell_linked_spell type 2 links Deterrence 19263 to 67801,
even without a client trigger. Its five-second package includes parry, deflect,
pacify, ignore-hit-direction and ranged-hit penalty. Aura 185's private helper
name/comment is corrected; it is not Disarm. The Deterrence helper validates
source signatures only, with no playable import or damage outcome claimed.
Full utility miss/dodge/parry/mechanic-resist tables still need caster hit, attribute7 and target defense inputs, including ignored combat-result/template gates. General Magic miss/resist/deflect stays gated. Deterrence needs the per-hit AlwaysHit source flag and correct post-miss/resist deflect stage; damage class alone cannot provide this. Exact flee RNG, private stance DUMMY, Targorr timing, Charm/general control purges, native custom gear and broader procs remain separate work. Level cap 80, loot and Ready-five scope are intact.
Verification
The final focused selection passes 138/138 tests in 19 files. JSON evidence is
artifacts/control-utility-followup-2026-10-06/focused-vitest.json. Eleven more
selected existing Kick/Ready/catalog checks pass, with 130 other cases excluded
by the title filter. Ready-five passes seven Vitest and twenty Python checks.
Initial diagnostics catch fixture identity/learnability/facing errors and an
outdated whitelist assertion; corrected fixtures and the final selection pass.
The failed whitelist report is retained separately.
The final selection adds explicit pure and actual learned-cast rejection checks
for Bladestorm under named Fear and the 20511 stun. A purge-capable accepted
grant does not supply permission to cast through those controls. Rejected casts
preserve auras, control, resources, cooldown and GCD. The existing source guard
already enforces this; these additions are test coverage. An intermediate
14-file selection also passes, but omits five intended files and is preserved
as focused-incomplete-selection.json; only the final 19-file selection is
credited above.
All three subprocesses use GPT-6 Luna extra-high. Source workers finish, and the independent integration review finds no further actionable issue after generic-fear bypass and source-level fixture corrections. The utility worker verifies the public/source Kick merge and exact contracts. No higher-tier subprocess is used. Concurrent healer-recovery edits briefly lack an import during one worker check; the owning concurrent edit supplies it before final focused validation. Root does not claim ownership of that feature. The first build catches a narrow/wide control-type mismatch; root changes the comparison without changing its runtime behavior before rebuilding.
Final build and content freeze
The normal build's prebuild hooks and 8 GB TypeScript compilation pass. An
earlier concurrent terrain fixture has an invalid material enum until its owner
corrects it; four targeted terrain checks then pass. The default Vite output
fails with Windows EPERM contention in dist/assets. A fresh isolated Vite
build succeeds, followed by the normal precompression and release-bundle
verifier. The failed attempts and build-isolated.log are retained in the task
artifact directory. No shared output or other process is removed.
The isolated build is frozen under
artifacts/control-utility-followup-2026-10-06/frozen-20261007-033245765/.
Its 5,967 files contain 118,418,867 bytes, aggregate SHA-256
00b7c1b19b0c8e64aba05732c24c7f3f65fa92c5260b4b3dee55391d5af2a2e4.
The freshly copied content manifest is
91b22f898ddabb4d20f1331f682852c33e5a6781c75caec9b1e435ebc60a0e39,
version content-d1ec6f1f858f21c1. All 27,587 referenced objects verify before
QA (6,566,442,405 bytes; 21,605 logical files). The prior pass's content is not
reused because the current manifest differs. The build's historical Wailing
bootstrap assets do not select the live test dungeon.
Final Cellblock Rush evidence
The single final routine run is
playtest-artifacts/stockade-weapon-utilities/20261007-033835372/ (UTC run ID;
October 6 locally). Normal UI creates a Discipline Priest and four Ready
companions, with isolated pre-entry level 30 preparation. Its seeded boss is
Targorr the Dread, entry 1696, source/live actor creature-84027. Native progress
and the results overlay agree on 1/1 in 03:05.6, Easy/Normal. No player or
party deaths occur; effective player healing totals 2,301.8 HP. Historical
fullClear field names certify this entered one-boss slice only.
The committed recorder retains 762 consecutive events, IDs 9–770, with zero
gaps, errors or discarded events/states. Companion Kick events 496 and 765
have kind: cast, zero damage and unblocked hit outcomes. No Kick damage event
is recorded. No active source cast is captured for Targorr, so these Kick
results do not prove a live interruption. Shield Bash 536/706 immediately
precedes Daze grants 537/707; Daze duration/movement remains fixture evidence.
Pummel is unobserved: the live actors are below its level 38 unlock. Utility
full blocks, Lichborne/control escape and pacify are deterministic-fixture
coverage, not observed live applications in this seed. There is no Death
Knight in the Ready-only live party.
Existing Disarm evidence contains four tank windows and seven mainhand autos during them (364, 373, 555, 569, 647, 659, 762). Each records raw damage 57, versus 68/70 outside those windows. This is consistent with the existing unarmed fallback and removed weapon contribution, not a requirement to suppress every swing. Disarm and the new pacify scheduler gate have different source behavior.
Root's labeled root-evidence-audit.cjs/.json independently rehashes all 5,967
frozen build files, seven loaded chunks and 2,124 served manifest objects
(77,019,550 bytes). Build and full content manifest remain unchanged; every
checked object matches its address and captured manifest reference, with zero
integrity failures. Raw network response bodies are not retained; the audit
matches immutable local bytes to recorded successful response URLs/status.
Root views the actual roster, equipped-party, route-50 and native results PNGs. Player/companion bodies, the staff and shield silhouette render. Close-party overlap and HUD occlusion limit a complete per-companion equipment review. Nine PNGs exist; no live camera-drag evidence is credited. Page exceptions are zero; the only console error is favicon 404. The harness cleans up its helper, server and browser. No gameplay source change or additional live run follows the frozen build. Final TypeScript compilation also passes after the test-only rejection additions.
The independent GPT-6 Luna extra-high evidence review finishes without a discrepancy. It separately checks raw event-ID continuity, native one-boss completion and agreement between captured fingerprints and root audit. It confirms the unarmed Disarm evidence and live utility/control attribution above; it does not rehash the content, run tests/builds/browser, or broaden the audit's network-body boundary.
Final game release hygiene passes 78 changed paths, including untracked files,
and is recorded in
artifacts/control-utility-followup-2026-10-06/release-check.log. Game/vault
changes are reviewed separately, canonical notes are updated, and the task
worklog closes without staging, commit or deployment.