Skip to content

Kudzu 0.8.17 - Command ModuleIR

Choose a tag to compare

@bunzzeok bunzzeok released this 08 Aug 05:48
· 2 commits to main since this release

Kudzu 0.8.17 lands the first Goal A vertical slice: supported command handlers now pass through plain JSON-safe ModuleIR and focused source codegen without changing deploy behavior.

Highlights

  • Represents direct setter arithmetic, primitive setter values, and state logging as plain command data.
  • Assigns deterministic numeric signal and handler slots while preserving lexical state-owner identity.
  • Preserves unary-plus and negative-zero semantics with JSON-safe syntax metadata.
  • Keeps non-finite numeric forms on the existing generic handler path.
  • Retains real repository-relative source ranges and omits invented positions for synthetic handlers.
  • Leaves initial values, final state IDs, route plans, and runtime ownership on their existing paths.

Validation

  • npm run check passes with 132 generated pages and 2 interactive pages.
  • npm test passes 166/166.
  • Focused compiler tests and production build pass on Node 22.
  • Worker graph remains 907 B raw / 475 B gzip.
  • Window graph remains 12,148 B raw / 5,427 B gzip.
  • The 21-run clean-build median remains within the 5% architecture gate.
  • A packed 0.8.17 tarball installs, typechecks, and builds a clean generated starter.

Upgrade

npm install @kudzujs/core@^0.8.17

create-kudzu remains 0.1.101 because its unchanged template already accepts @kudzujs/core@^0.8.15.