fix(security): upgrade Remix packages 2.1.0 → 2.17.4#3372
fix(security): upgrade Remix packages 2.1.0 → 2.17.4#3372devin-ai-integration[bot] wants to merge 3 commits intomainfrom
Conversation
Upgraded packages: - @remix-run/express: 2.1.0 → 2.17.4 - @remix-run/node: 2.1.0 → 2.17.4 - @remix-run/react: 2.1.0 → 2.17.4 - @remix-run/router: 1.15.3 → 1.23.2 - @remix-run/serve: 2.1.0 → 2.17.4 - @remix-run/server-runtime: 2.1.0 → 2.17.4 - @remix-run/dev: 2.1.0 → 2.17.4 - @remix-run/eslint-config: 2.1.0 → 2.17.4 - @remix-run/testing: 2.1.0 → 2.17.4 Also updated tar-fs override for new @remix-run/dev version. Co-Authored-By: Eric Allam <eallam@icloud.com>
Co-Authored-By: Eric Allam <eallam@icloud.com>
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
|
Operational Test Results: Remix 2.17.4 UpgradeRan the hello-world reference project's trigger dev server against the local webapp (port 3030) with upgraded Remix packages. Triggered tasks via API and verified key UI pages render correctly. Operational Tests (3/3 passed)
Tasks PageTasks page loaded with all registered tasks showing Task ID, File path, Running/Queued counts, Activity (7d), Avg. duration columns. Runs ListTriggered Run Detail PageFull trace tree with all spans: Previous Basic UI Tests (4/4 passed)
Setup Details
|
Comprehensive UI Test Results (Phase 3): Every Page, Every Filter, Every ButtonRan the webapp locally (port 3030) with hello-world reference project dev server, triggered 6 diverse tasks (hello-world normal/error, parent-task, batch-task, create-jsonl-file, simple-parent), then systematically tested every page, filter dropdown, and interactive element. Result: All 30+ tests PASSED Pages Tested (22 pages)
Filter Dropdowns Tested
Switcher Dropdowns Tested
Interactive Elements Tested
Conclusion: All pages, filter dropdowns, switchers, and interactive elements work correctly with Remix 2.17.4. No regressions detected. The upgrade is safe. |
Co-Authored-By: Eric Allam <eallam@icloud.com>
Summary
Upgrades all
@remix-run/*packages inapps/webappfrom 2.1.0 → 2.17.4 to address security vulnerabilities. Recreation of #2951 on a fresh checkout ofmain.Updated packages (
apps/webapp/package.json):@remix-run/express,@remix-run/node,@remix-run/react,@remix-run/serve,@remix-run/server-runtime: 2.1.0 → 2.17.4@remix-run/router: ^1.15.3 → ^1.23.2@remix-run/dev,@remix-run/eslint-config,@remix-run/testing: 2.1.0 → 2.17.4Root
package.jsonoverrides:@remix-run/dev@2.17.4>tar-fs: 2.1.3 → 2.1.4testcontainers@10.28.0>tar-fs: 3.0.9 → 3.1.1Documentation: Updated Remix version references in
CLAUDE.md,apps/webapp/CLAUDE.md, and.cursor/rules/webapp.mdc.Server changes: Added
.server-changes/upgrade-remix-security.mdfor release tracking perCONTRIBUTING.md.No application code changes — only
package.jsonfiles, documentation, a server-changes entry, and the regeneratedpnpm-lock.yaml.Updates since last revision
Addressed all 3 Devin Review findings:
.server-changes/file — added.server-changes/upgrade-remix-security.md(commit ce22a0b)@sentry/remix@9.46.0) — verified the patch atpatches/@sentry__remix@9.46.0.patchapplies cleanly against 2.17.4. The patch modifies Sentry's ownRemixInstrumentationwrapper (removingrequest.clone()and form data attributes), not Remix internals. The underlying Remix APIs it hooks into (callRouteAction,callRouteLoader) are stable across 2.1→2.17.remix-typedjson@0.3.1compatibility — peer deps declare@remix-run/react: ^1.16.0 || ^2.0, covering 2.17.4. Confirmed working at runtime across all 22 tested pages that use it (root.tsx, hooks, route loaders).Verification performed during this session
docker/webapp/Dockerfile) builds successfullyReview & Testing Checklist for Human
remix-auth,remix-auth-email-link, andremix-auth-githubdeclare peer deps on@remix-run/server-runtime@^1.x, which is now 2.17.4. Login (magic link + OAuth) should be tested in a staging environment since local dev testing may not exercise all auth code paths.turbo-stream@2.4.1,undici@6.25.0,valibot@1.3.1,ws@7.5.10Recommended test plan: deploy to staging and exercise core webapp flows — login (email magic link + GitHub OAuth), dashboard navigation, task triggering/viewing, and API endpoints — to catch runtime regressions not covered by local testing.
Notes
remix-auth-*packages (expecting@remix-run/server-runtime@^1.x) were present in the original PR fix(security): upgrade Remix packages 2.1.0 → 2.17.4 #2951 as well and appear to be pre-existingaudit,units/internal/1-of-8) are unrelated:auditis aclaude-code-actionbot permissions issue; the internal test failure is a ClickHouse testcontainersFailed to connect to ReaperflakeLink to Devin session: https://app.devin.ai/sessions/d9fa9953b9bf40e5a8d12b8f5ba5b86b
Requested by: @ericallam