Files
WRNexusJS/FIXES-0.6.0-R7-TEST-CASCADE.md
T
2026-08-01 01:09:58 +05:30

54 lines
2.6 KiB
Markdown

# WRNexusJS v0.6.0 R7 test-cascade fixes
This revision addresses the 71 failures reported after running `bun run check` on R6.
## Root fixes
1. **Synchronous CSR hydration restored**
- Scopes without a browser module hydrate immediately again.
- The unresolved `__WRNEXUS_CLIENT_MODULE__` placeholder used by direct compiler/test rendering also hydrates inline behavior immediately.
- Real resolved browser modules still load asynchronously before scope setup.
2. **Component event target selection corrected**
- A scope with its own `data-wrn-events` now uses itself before searching descendants.
3. **Lifecycle validation restored**
- Component lifecycle supports `mount`, `update`, and `unmount`.
- Compatibility aliases `clientInit` and `dispose` map to mount/unmount.
- Unknown component and store lifecycle hooks fail parsing.
4. **Browser binding collisions fixed**
- Runtime names such as `output`, `server`, `props`, and `refs` are not generated as implicit state/prop aliases.
- Function parameters may still intentionally use those names.
5. **Synchronous page exports preserved**
- Pages remain synchronous unless imported stores require `await`.
- This restores in-process WRN HMR module behavior.
6. **Store dispose lifecycle mutations fixed**
- `dispose` now runs through the same internal mutation guard as initialization and hydration hooks.
7. **Typed UI contract tests updated**
- Tests inspect parsed typed props and `outputs {}` declarations instead of matching legacy untyped declarations and `@event` lines.
- Dropdown danger styling is asserted through its canonical `data-danger="true"` state.
8. **Component reference generation corrected**
- Output payload parsing now supports nested parentheses and object/union types.
- RangeSlider now documents `input`, `change`, `focus`, and `blur`.
- FeatureGrid now includes the universal `size` and `color` props.
## Focused validation performed
- 250 WRN UI/showcase files parsed, generated, and browser-module syntax checked.
- 108 UI browser modules generated without syntax errors.
- Unknown lifecycle hook rejection passed.
- Reserved output/prop browser codegen probe passed.
- Synchronous non-store page generation probe passed.
- Store clientInit/dispose mutation probe passed.
- UI component reference exactly matches parsed public outputs.
- Component reference regeneration is idempotent.
- VS Code extension: 28 tests passed and all validation checks passed.
- `node scripts/validate-0.6.mjs`: 15 passed, 0 failed; Bun warning only.
The complete Bun workspace test suite must still be run on a machine with installed dependencies.