Skip to content

Release v0.2.1#11

Merged
SimplyLiz merged 15 commits into
mainfrom
develop
Feb 22, 2026
Merged

Release v0.2.1#11
SimplyLiz merged 15 commits into
mainfrom
develop

Conversation

@SimplyLiz

Copy link
Copy Markdown
Collaborator

Summary

  • Fix stale probe size references (988 B / 901 B → ~1 KB) across README, docs, and demo
  • Fix minimatch ReDoS vulnerability (high) via pnpm override
  • Add detailed README to all 7 packages for npm
  • Link npm badge to @device-router scope search page
  • Update root README signals/hints tables and CHANGELOG for v0.2.0 features (GPU, battery)

Changes since last release

Full diff: v0.2.0...develop

SimplyLiz and others added 15 commits February 22, 2026 16:06
Enforce coverage thresholds in CI and publish, add security audit,
version-tag validation, GitHub Release creation, and Dependabot for
automated dependency updates targeting develop.
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4 to 6.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](actions/setup-node@v4...v6)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [actions/checkout](https://github.com/actions/checkout) from 4 to 6.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](actions/checkout@v4...v6)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: '6'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps the dev-deps group with 1 update: [esbuild](https://github.com/evanw/esbuild).


Updates `esbuild` from 0.25.12 to 0.27.3
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](evanw/esbuild@v0.25.12...v0.27.3)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-version: 0.27.3
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-deps
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Bumps [koa](https://github.com/koajs/koa) and [@types/koa](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/koa). These dependencies needed to be updated together.

Updates `koa` from 2.16.3 to 3.1.1
- [Release notes](https://github.com/koajs/koa/releases)
- [Changelog](https://github.com/koajs/koa/blob/master/History.md)
- [Commits](koajs/koa@v2.16.3...v3.1.1)

Updates `@types/koa` from 2.15.0 to 3.0.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/koa)

---
updated-dependencies:
- dependency-name: koa
  dependency-version: 3.1.1
  dependency-type: direct:production
  update-type: version-update:semver-major
- dependency-name: "@types/koa"
  dependency-version: 3.0.1
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* Add GPU detection via WebGL renderer string

Detect GPU capabilities using the UNMASKED_RENDERER_WEBGL string from
WebGL debug info. Classifies GPUs into none/low/mid/high tiers and
derives a disable3dEffects rendering hint for apps serving 3D or
GPU-intensive content.

* Harden GPU detection, add thresholds, extract shared demo template

- Fix probe bundle size references (762 B -> 988 B) across README, docs, examples
- Add WebGL context cleanup via loseContext() to free GPU resources
- Use failIfMajorPerformanceCaveat to detect software renderers even
  when WEBGL_debug_renderer_info is blocked by privacy settings
- Add GpuThresholds (softwarePattern, highEndPattern) to TierThresholds
  for API consistency with CPU/memory/connection thresholds
- Extract duplicated HTML template from 4 example servers into
  examples/shared/demo-template.ts (~1000 lines removed)
- Fix misaligned ASCII diagram in README
- Update API docs with GPU threshold documentation
- Add tests for loseContext, failIfMajorPerformanceCaveat fallback,
  and custom GPU thresholds

* Fix ASCII diagram box alignment in README

* Fix prettier formatting
* Add Battery API signal to constrain hints on low power

Battery is transient state (not a device capability), so it bypasses
tier classification and feeds directly into deriveHints(). When the
device is unplugged and below 15% charge, deferHeavyComponents,
reduceAnimations, and disableAutoplay are forced on.

Probe collects battery via navigator.getBattery() (Chromium-only),
silently skipped on Firefox/Safari. Bundle stays at 1024 bytes gzipped
by reclaiming bytes from cookie handling code.

* Fix prettier formatting
* Replace stale probe byte counts with ~1 KB

Exact byte counts (988 B, 901 B) went stale after battery signal
landed. Use ~1 KB in all display references — the actual limit is
enforced at build time in bundle.js and ci.yml.

* Fix minimatch ReDoS vulnerability (high)

Override minimatch <10.2.1 → ^10.2.1 via pnpm overrides.
Vulnerable 9.0.6 was pulled in transitively by typescript-eslint.

* Add README to each package for npm

npm shows the README from the package directory at publish time.
Each package now has a detailed README covering installation, usage,
API surface, options, and compatibility.

* Link npm badge to scope search page

* Update README and CHANGELOG for v0.2.0

- Add battery row to signals table
- Update 3 hint descriptions to mention low battery
- Fix classify step to mention GPU tier
- Add 0.2.0 changelog entry (GPU, battery, validation, deps, CI)

* Fix prettier formatting
@SimplyLiz
SimplyLiz merged commit f29313e into main Feb 22, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant