66 lines
3.2 KiB
Markdown
66 lines
3.2 KiB
Markdown
# WRNexusJS 0.6.0 focused fixes — issues 1 through 7
|
|
|
|
This developer-test archive fixes the seven blockers identified in `WRNexusJS-v0.6.0-validation-against-spec.md`.
|
|
|
|
## Fixed
|
|
|
|
1. **Generated browser-module syntax**
|
|
- JavaScript reserved words such as the `class` prop are never destructured into invalid bindings.
|
|
- Function parameters no longer collide with generated prop, state, output, server, props, or refs aliases.
|
|
- All 108 UI component browser modules were regenerated and passed JavaScript syntax parsing.
|
|
|
|
2. **Browser-store RPC**
|
|
- Generated store actions bind `server` from the store action context.
|
|
- Browser store RPC sends same-origin structured requests with CSRF and request identifiers.
|
|
- A live simulated store called a server function successfully and updated reactive state.
|
|
|
|
3. **Concrete UI output contracts**
|
|
- No `unknown` remains inside any UI `outputs {}` declaration.
|
|
- Component reference and showcase metadata were regenerated.
|
|
- Legacy `$emit`, `@event`, `$event`, and `event.detail` remain absent from framework UI components.
|
|
|
|
4. **Configured import modes**
|
|
- Dev compilation reads `imports.mode`, `imports.aliases`, and `imports.autoImport` from application configuration.
|
|
- `legacy` accepts implicit discovery.
|
|
- `compatible` accepts it with `WRN-IMPORT-IMPLICIT` diagnostics.
|
|
- `explicit` rejects missing imports and accepts correctly imported components/layouts/stores.
|
|
|
|
5. **Store persistence migration and validation**
|
|
- `persist { migrations { ... } validate { ... } }` is parsed and emitted.
|
|
- Browser restore executes version migration before validation.
|
|
- Invalid or incompatible persisted values are reset with diagnostics.
|
|
- Include-only state is written with the current persistence version.
|
|
|
|
6. **Store HMR integration**
|
|
- Store browser modules expose hot-update definitions.
|
|
- The dev server broadcasts versioned `store-update` messages.
|
|
- The browser HMR client imports changed store modules and applies updates without a mandatory document reload.
|
|
- Compatible fields are preserved; added, removed, and incompatible fields are reported.
|
|
|
|
7. **Restricted RPC exposure**
|
|
- RPC manifests include only server functions referenced through `server.name(...)` by browser-capable code.
|
|
- Unreferenced server functions remain available for local SSR/server execution but are not remotely exposed.
|
|
|
|
## Focused validation completed
|
|
|
|
- 108 UI browser artifacts generated: **0 generation failures**.
|
|
- 108 UI browser artifacts syntax checked: **0 syntax failures**.
|
|
- 250 UI/showcase `.wrn` files parsed: **0 parser failures**.
|
|
- Browser-store RPC/persistence/validation/HMR simulation: **passed**.
|
|
- Import mode simulation for legacy/compatible/explicit: **passed**.
|
|
- Restricted component and store RPC manifest probes: **passed**.
|
|
- Generated server-store TypeScript transpilation: **0 diagnostics**.
|
|
- VS Code extension Node tests: **28 passed**.
|
|
- `node scripts/validate-0.6.mjs`: **12 passed, 1 Bun warning, 0 failed**.
|
|
|
|
## Remaining local release gate
|
|
|
|
Bun is unavailable in the packaging environment. Run the full point-8 suite locally before publishing:
|
|
|
|
```powershell
|
|
bun install
|
|
bun run validate:0.6
|
|
bun run check
|
|
bun run --cwd examples/component-showcase check
|
|
```
|