Files
WRNexusJS/FIXES-0.6.0-R8-UI-COMPILE.md
T
2026-08-01 01:09:58 +05:30

1.5 KiB

WRNexusJS v0.6.0 R8 UI compile fixes

R8 fixes the remaining UI test cascade reported after R7.

Root causes

  1. Readonly-prop diagnostics treated comparison operators such as === as assignments.
  2. Text inside JavaScript string literals, including selectors such as input[name='...'], was scanned as executable assignment syntax.
  3. Function parameters that intentionally shadowed prop names were treated as mutations of those props.
  4. component-catalog.json did not contain four bundled declarations even though the generated component reference did.

Changes

  • Added JavaScript trivia masking before readonly-prop mutation analysis.
  • Assignment recognition now distinguishes =, compound assignments, ++, and -- from ==, ===, =>, and comparisons.
  • props.name = ... is still rejected.
  • Bare prop assignment is ignored when the name is a function parameter or local variable.
  • Syntax and typecheck packages now share the same readonly-prop mutation detector.
  • Component catalog generation now includes every bundled component while preserving existing metadata.
  • Added R8 validation gates that compile all 108 UI components, verify native attribute forwarding, and compare catalog/reference declarations.

Focused validation

  • 108/108 UI components compile.
  • 108/108 UI components include native attribute forwarding.
  • Component catalog: 108 declarations.
  • Component reference: 108 declarations.
  • Generated showcase: 108 detail pages, 417 demos, 11 categories.