Repository navigation
build(deps): refresh Node types and cover Node 25 installs - #52
Conversation
Preserve the supported development runtime range while updating compatible Node types. Add the missing Node 25 CI job so incompatible build and test dependency upgrades cannot pass unnoticed. Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
|
🦞👀 Pull request received. I will update this pull request when review starts. ClawSweeper review completeClawSweeper finished reviewing this revision. The review result is being finalized. |
|
Codex review: needs maintainer review before merge. Reviewed October 7, 2026, 5:10 AM ET / 09:10 UTC. ClawSweeper reviewWhat this changesUpdates Node type declarations, adds an Ubuntu Node 25 CI job, and documents the supported development-install contract. Merge readiness✅ Ready for maintainer review Keep open as a useful, focused maintenance PR. Current main lacks the new coverage and type update; the patch preserves the established compatibility contract and has no actionable findings. Priority: P2 Review scores
Verification
How this fits togetherUIRouter’s development toolchain installs dependencies, builds the standalone router package, and validates its tests and published imports. CI checks that this workflow succeeds on supported Node versions. flowchart TD
A[Supported Node versions] --> C[Strict dependency installation]
B[Locked development tools] --> C
C --> D[Build and quality checks]
D --> E[Router behavior tests]
D --> F[Package import validation]
E --> G[CI result]
F --> G
Before mergeNone. Agent review detailsSecurityNone. Review metrics
Technical reviewBest possible solution: Maintain supported development installs through a compatible locked toolchain and explicit Node 25 CI coverage. Do we have a high-confidence way to reproduce the issue? Not applicable to a current router bug: this PR prevents incompatible tooling upgrades, and source inspection verifies the missing Node 25 CI coverage. Is this the best way to solve the issue? Yes. Adding the missing matrix entry while retaining compatible tools is a narrow solution consistent with the recorded development-support decision. AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning medium; reviewed against f7320e4435a3. LabelsLabel changes:
Label justifications:
EvidenceWhat I checked:
Likely related people:
Rating scale
Overall follows the weaker of proof and patch quality. Workflow
|
What Problem This Solves
Dependency updates can pass the existing CI matrix while breaking development installs on Node 25, which remains inside the package's declared Node range.
User Impact
No router API, package output, runtime requirement, or package version changes. Development installs retain Node 25 compatibility, and CI now checks it on Ubuntu alongside the existing Node 22/24 platform matrix.
Why This Change Was Made
Update
@types/nodeto 26.6.4 from #50, preserving the two-day release cooldown. Retain tsdown 0.22.14 and Vitest 4.1.11: tsdown 0.23.0 (#50) and Vitest 5.0.3 (#51) explicitly exclude Node 25 from their engine ranges, which conflicts with this repository's strict engine checks and supported development range. Document the CI compatibility contract and record the maintenance entry in Unreleased. Thanks @dependabot.Evidence
pnpm install --frozen-lockfile && pnpm run checkpassed, including formatting, build, typecheck, type-aware lint, all 58 tests, and packed-package installation/import validation.ERR_PNPM_UNSUPPORTED_ENGINE, confirming the compatibility blocker.git diff --checkpassed.Supersedes the compatible Node types update in #50. Related: #51.
Exact-head CI passed for
44fae6824ab24c2998b92eeb6e1b76085769d88b: all seven Node/OS jobs and workflow lint in run 37598481727, plus CodeQL.