54 lines
2.6 KiB
Markdown
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.
|