Skip to content

v0.7.4

Choose a tag to compare

@github-actions github-actions released this 08 Nov 02:54
a410638

Summary

Lint reads the components of the Nativele component packages a project depends on, findings from migrating a real application are fixed, diagnostics use one severity scale and one path per check, and the docs, Skills and tests are cut down and rewritten for reading. Recorded in CHANGELOG under 0.7.4.

Changes

  • Component packages: lint, ts-dom check and the oxlint plugin check the components of each dependency that lists @nativele/ts-dom, read from the modules its exports name; ts-dom gen still writes only from the scanned folders. A tag declared only in TypeScript is listed as such by unchecked-custom-elements.
  • New checks: constructor-host-change (a constructor that changes the element itself, which makes a browser create an HTMLUnknownElement), define-class-not-exported in ts-dom check, and the runtime warning unslotted-node when a Light DOM component removes a child with no matching slot. Lint follows extends to the Component(...) class a subclass extends.
  • doctor: only errors and warnings (skill-outdated is a warning; ts-dom skills shows which Skills cover the project's dependencies), no stale-generated and no --include/--exclude/--whitespace, --ignore added.
  • One path per check: duplicate-define within and across folders, one stale-generated message, one issue formatter, each id once in ts-dom rules, --ignore reaching unchecked-content.
  • Fixes: comments among a Light DOM host's children stay where they are; lifecycle callbacks are declared on the component type (no TS4113); several tsDom() share one watcher listener (no MaxListenersExceededWarning); the runtime data-prop error is item-prop-missing.
  • Docs and Skills: duplicated, stale and wrong passages removed; every passage restructured under writing rules now in docs/contributing.md; all 19 Skills re-verified by agent trials on 2026-11-08.
  • Tests: shared helpers, duplicate tests removed, browser tests on ephemeral ports, a real-browser test of the constructor behavior and the slot warning.
  • Versioning policy: any 0.x version, a patch included, may contain breaking changes, marked in its section.

Verification

  • npm run check, npm test (751), npm run lint, npm run test:browser (118), npm run bench:check.
  • Fresh Sonnet agent trials of all 19 Skills from packed builds, each checked again independently; the four Skills changed afterwards (core, linting, testing, formatting) trialled again.

Breaking Changes

  • ts-dom doctor no longer takes --include, --exclude and --whitespace, no longer reports stale-generated (use ts-dom gen --check or ts-dom check --no-write), and its --json has no info issues; skill-available is gone.

🤖 Generated with Claude Code