51 lines
5.0 KiB
Markdown
51 lines
5.0 KiB
Markdown
# Stormwind Stockade Stances and Blocking Live Playtest — 2026-10-05
|
||
|
||
## Run and clear result
|
||
|
||
The successful normal Stockade run is `playtest-artifacts/stockade-stances-blocking/20261005-184333429/`. It used the immutable distribution at `artifacts/enemy-stances-blocking-2026-10-05/frozen-dist-2026-10-05T18-27-09-285Z`, whose aggregate SHA-256 was `1fcd021af0ef90c8d994cf1ab853ef0e62f4d4767fa3acaab698b14121194310` both before and after the run.
|
||
|
||
The UI showed **FULL DUNGEON CLEAR** for Stormwind Stockade at 24:25.4, with all five required IDs recorded: `creature-84027` (Targorr the Dread), `creature-79088` (Kam Deepfury), `creature-79098` (Hamhock), `creature-79124` (Bazil Thredd), and `creature-79116` (Dextren Ward). The player entered at level 30 as a WoW Discipline Priest and naturally reached level 40; all four Ready companions reached level 39. The level-80 cap stayed in force, and loot was not tested. No player or companion deaths were recorded.
|
||
|
||
The first attempt, `20261005-182757796`, is preserved as `superseded-observability-limited`. It reached the 25% route screenshot but was stopped when no periodic in-run state was available; it produced no route result and is not counted as a clear. The retry added read-only 30-second `progress.json` snapshots and completed the route.
|
||
|
||
Root visually reviewed the roster and 25%, 50%, 75%, and boss-arrival screenshots. The native HUD, character bodies, equipment, and party silhouettes were visible. Existing actor overlap and edge occlusion remained; this playtest makes no visual or race-model fix claim.
|
||
|
||
## Stance applications
|
||
|
||
The corrected reconstruction combines live collector observations with route-sample aura telemetry and keys application identity by `instanceId + appliedAt`:
|
||
|
||
| Source spell | Observed applications | Source |
|
||
|---|---:|---|
|
||
| 7164 Defensive Stance | 1 | Kam Deepfury |
|
||
| 7165 Battle Stance | 34 | Hostile mobs |
|
||
| 3419 Improved Blocking | 1 preserved application | Kam Deepfury |
|
||
|
||
Kam’s preserved Improved Blocking application had a six-second active window. Its sampled route telemetry contains 101 Kam snapshots, but `abilityCastCounts` was `{}` in every snapshot, no active cast window was sampled, and the preserved Kam-source combat events were damage events only. The historical collector keyed by stable aura instance ID and could conflate repeat applications. The wrapper now keys by instance ID plus application time; reanalysis of the saved route samples still found no additional 3419 application. Therefore the observed application is confirmed, while any repeated short applications remain unverified because they may have fallen between reads. See `playtest-artifacts/stockade-stances-blocking/20261005-184333429/aura-application-reanalysis.json`.
|
||
|
||
## Block outcomes
|
||
|
||
The route evidence contains 149 raw damage events with `outcome=block`:
|
||
|
||
- 141 hostile attacks were blocked by the party; 30 have a matching sampled `lastCombatResult` amount.
|
||
- 8 party attacks were blocked by hostiles; 3 have a matching sampled amount.
|
||
- Actor direction was unresolved for 0 events.
|
||
- 116 block events have no matching sampled blocked amount. Another 14 sampled `lastCombatResult` observations had no matching latest damage event. Unmatched outcomes remain recorded without inferring an amount.
|
||
|
||
This establishes both party defense blocks and NPC defense blocks. The uncorrelated amounts and the Improved Blocking repeat count remain subject to intermittent sampling.
|
||
|
||
## Build and content provenance
|
||
|
||
The frozen distribution fingerprint matched before and after. The global content manifest changed during the run from SHA-256 `d3d553aa7443bf444c87b0c0e923357df02756d0822db2e1a0a908d3f257fdb8` to `5dc3143362f206b90debaeb26e7703d74b84d9838266f99f1b2a7d49fc859c1e`; its file count rose from 21,592 to 21,594. The initial snapshot retained summary metadata rather than a copy of the original manifest, so the changed entries cannot be isolated and whole-tree content immutability is not claimed.
|
||
|
||
During the run, 2,124 hash-addressed content objects returned successfully and all 2,124 matched their hash-addressed paths; no object-integrity failures were recorded. This verifies the fetched objects, while the manifest-level change remains a provenance limitation. See `content-source-evidence.json`, `content-manifest-before.json`, and `content-manifest-after.json` in the run directory.
|
||
|
||
The browser recorded zero page errors. Its only console error was a 404 for `/favicon.ico`.
|
||
|
||
## Preparation
|
||
|
||
`node --check scripts/playtest-stockade-stances-blocking.cjs` and `node scripts/playtest-stockade-stances-blocking.cjs --prepare-only` passed after the aura application identity correction. Preparation did not scan a distribution or start a server/browser. The full clear, five native result IDs, frozen-build equality, and content-object integrity are recorded in `run-record.json` and the adjacent evidence files.
|
||
|
||
The run exited with code 0. Run-owned runner/server and browser processes have
|
||
exited, and generated helper scripts are removed. The stale helper from the
|
||
superseded first attempt was removed after verifying its exact owned path.
|