Skip to content

Development -> main#2190

Merged
andrew-bierman merged 16 commits into
mainfrom
development
Apr 16, 2026
Merged

Development -> main#2190
andrew-bierman merged 16 commits into
mainfrom
development

Conversation

@andrew-bierman
Copy link
Copy Markdown
Collaborator

@andrew-bierman andrew-bierman commented Apr 16, 2026

Summary by CodeRabbit

  • New Features

    • Custom error pages (404, 500) added to admin application
    • Development-mode demo navigation link added to mobile app profile
  • Improvements

    • Expanded touch targets for mobile back navigation controls
    • Refined spacing and layout consistency across mobile header buttons
  • Chores

    • Implemented security HTTP headers across all applications
    • Added Cloudflare Workers deployment configuration
    • Updated build cleanup processes

github-actions Bot and others added 16 commits April 15, 2026 09:47
Add missing scaffolding to bring the admin app to parity with the
landing and guides apps:

- vercel.json — security response headers (X-Frame-Options, nosniff, etc.)
- pages/404.tsx + pages/500.tsx — static custom error pages (works with output: export)
- app/not-found.tsx — App Router 404 handler with Tailwind/themed styles

https://claude.ai/code/session_01LqN8nDxX8KMs8s53J4DGVD
Drop vercel.json from landing and admin (not deployed to Vercel) and
strip .vercel from the clean scripts in landing and guides.

https://claude.ai/code/session_01LqN8nDxX8KMs8s53J4DGVD
- wrangler.jsonc: configures packrat-admin as a Workers static assets
  project, serving from ./out with 404-page handling
- public/_headers: security response headers for admin, landing, and
  guides (replaces the now-deleted vercel.json files)

https://claude.ai/code/session_01LqN8nDxX8KMs8s53J4DGVD
Same wrangler.jsonc pattern as admin — serves ./out with 404-page
handling. _headers already in place from the previous commit.

https://claude.ai/code/session_01LqN8nDxX8KMs8s53J4DGVD
…ture-eOiWV

claude/setup-admin-app-structure-eOiWV
@cloudflare-workers-and-pages
Copy link
Copy Markdown
Contributor

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
❌ Deployment failed
View logs
packrat-admin 92812d0 Apr 16 2026, 03:52 AM

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 16, 2026

Caution

Review failed

The pull request is closed.

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 65b10b3c-8703-4658-923d-71c2fbe6b22a

📥 Commits

Reviewing files that changed from the base of the PR and between a263cb7 and 92812d0.

⛔ Files ignored due to path filters (1)
  • bun.lock is excluded by !**/*.lock
📒 Files selected for processing (18)
  • apps/admin/app/not-found.tsx
  • apps/admin/pages/404.tsx
  • apps/admin/pages/500.tsx
  • apps/admin/public/_headers
  • apps/admin/wrangler.jsonc
  • apps/expo/app/(app)/(tabs)/(home)/index.tsx
  • apps/expo/app/(app)/(tabs)/profile/index.tsx
  • apps/expo/features/packs/screens/PackListScreen.tsx
  • apps/expo/features/trips/screens/TripListScreen.tsx
  • apps/expo/features/trips/screens/TripWeatherDetailsScreen.tsx
  • apps/expo/features/weather/screens/LocationsScreen.tsx
  • apps/guides/package.json
  • apps/guides/public/_headers
  • apps/guides/wrangler.jsonc
  • apps/landing/package.json
  • apps/landing/public/_headers
  • apps/landing/vercel.json
  • apps/landing/wrangler.jsonc

📝 Walkthrough

Walkthrough

This PR adds custom error pages to the admin app, introduces security headers and Cloudflare Wrangler configuration across multiple apps, relocates the demo navigation icon in the Expo app from the home screen to the profile screen, applies minor layout refinements to Expo UI components, updates build scripts to exclude .vercel cleanup, and removes redundant Vercel header configuration from the landing app.

Changes

Cohort / File(s) Summary
Admin Error Pages
apps/admin/app/not-found.tsx, apps/admin/pages/404.tsx, apps/admin/pages/500.tsx
Added custom 404/500 error pages with centered layouts, icon displays, and navigation links to dashboard or contact email, using both App Router and Pages Router conventions.
Admin Configuration
apps/admin/public/_headers, apps/admin/wrangler.jsonc
Added security HTTP headers (frame options, content-type, referrer policy, permissions) and Cloudflare Wrangler deployment config for static asset serving from ./out with 404 handling.
Guides & Landing Configuration
apps/guides/public/_headers, apps/guides/wrangler.jsonc, apps/landing/public/_headers, apps/landing/wrangler.jsonc
Added identical security headers and Wrangler configuration to guides and landing apps for Cloudflare deployment consistency.
Guides & Landing Build Scripts
apps/guides/package.json, apps/landing/package.json
Updated clean scripts to exclude .vercel directory from rimraf operations.
Landing Configuration Consolidation
apps/landing/vercel.json
Removed Vercel configuration file that applied security headers; functionality migrated to _headers file.
Expo Demo Icon Relocation
apps/expo/app/(app)/(tabs)/(home)/index.tsx, apps/expo/app/(app)/(tabs)/profile/index.tsx
Moved DemoIcon component from home screen to profile screen with development-only environment check; adjusted header right-view layout padding.
Expo Layout Refinements
apps/expo/features/packs/screens/PackListScreen.tsx, apps/expo/features/trips/screens/TripListScreen.tsx, apps/expo/features/trips/screens/TripWeatherDetailsScreen.tsx, apps/expo/features/weather/screens/LocationsScreen.tsx
Applied minor spacing adjustments (margin/padding), improved touch targets via hitSlop, and refactored header controls to use Pressable with consistent alignment styling.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

  • Release/2.0.16 #1993: Modifies the same profile header file (apps/expo/app/(app)/(tabs)/profile/index.tsx) with changes to header UI and rightView behavior.

Suggested labels

ci/cd

Suggested reviewers

  • Isthisanmol

Poem

🐰 A new path for errors to show,
With headers that guard from the foe,
The demo now hides 'til dev's test,
And Cloudflare config's deployed its best!
Layout aligned, spacing just right,
The admin app's future burns bright! ✨

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch development

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions github-actions Bot added dependencies Pull requests that update a dependency file mobile web labels Apr 16, 2026
@andrew-bierman andrew-bierman marked this pull request as ready for review April 16, 2026 03:53
Copilot AI review requested due to automatic review settings April 16, 2026 03:53
@andrew-bierman andrew-bierman merged commit c34c059 into main Apr 16, 2026
11 of 17 checks passed
@github-actions
Copy link
Copy Markdown
Contributor

Coverage Report for Expo Unit Tests Coverage (./apps/expo)

Status Category Percentage Covered / Total
🔵 Lines 80.15% 517 / 645
🔵 Statements 80.15% (🎯 75%) 517 / 645
🔵 Functions 92.85% 52 / 56
🔵 Branches 92.55% 199 / 215
File CoverageNo changed files found.
Generated in workflow #452 for commit 92812d0 by the Vitest Coverage Report Action

@github-actions
Copy link
Copy Markdown
Contributor

Coverage Report for API Unit Tests Coverage (./packages/api)

Status Category Percentage Covered / Total
🔵 Lines 86.68% 905 / 1044
🔵 Statements 86.68% (🎯 80%) 905 / 1044
🔵 Functions 96% 48 / 50
🔵 Branches 89.49% 281 / 314
File CoverageNo changed files found.
Generated in workflow #452 for commit 92812d0 by the Vitest Coverage Report Action

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the monorepo for the next release and shifts static web app deployment configuration from Vercel to Cloudflare (Wrangler + _headers), while also polishing a few Expo header interactions.

Changes:

  • Bump workspace package versions to 2.0.19 in bun.lock.
  • Add Cloudflare Wrangler + _headers security headers for admin, landing, and guides; remove apps/landing/vercel.json.
  • Small Expo UI tweaks: improve header button spacing/tap targets and move the dev-only “Demo” icon from Home to Profile.

Reviewed changes

Copilot reviewed 18 out of 19 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
bun.lock Bumps multiple workspace package versions from 2.0.182.0.19.
apps/landing/wrangler.jsonc Adds Wrangler config for deploying the static export output (./out).
apps/landing/vercel.json Removes Vercel-specific header configuration.
apps/landing/public/_headers Reintroduces security headers via Cloudflare Pages _headers.
apps/landing/package.json Updates clean script to drop .vercel.
apps/guides/wrangler.jsonc Adds Wrangler config for deploying the static export output (./out).
apps/guides/public/_headers Adds Cloudflare Pages _headers security headers.
apps/guides/package.json Updates clean script to drop .vercel.
apps/expo/features/weather/screens/LocationsScreen.tsx Adjusts header button layout (spacing/alignment) for back/add actions.
apps/expo/features/trips/screens/TripWeatherDetailsScreen.tsx Increases back icon size and adds hitSlop for better tap target.
apps/expo/features/trips/screens/TripListScreen.tsx Tweaks header right-side spacing.
apps/expo/features/packs/screens/PackListScreen.tsx Tweaks header right-side spacing.
apps/expo/app/(app)/(tabs)/profile/index.tsx Adds dev-only Demo icon to Profile header (guarded by clientEnvs.NODE_ENV).
apps/expo/app/(app)/(tabs)/(home)/index.tsx Removes Demo icon from Home header.
apps/admin/wrangler.jsonc Adds Wrangler config for deploying the static export output (./out).
apps/admin/public/_headers Adds Cloudflare Pages _headers security headers.
apps/admin/pages/500.tsx Adds custom static /500 page for export/static hosting scenarios.
apps/admin/pages/404.tsx Adds custom static /404 page for export/static hosting scenarios.
apps/admin/app/not-found.tsx Adds App Router not-found UI for runtime/app-router navigation.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread apps/admin/pages/404.tsx
Comment on lines +1 to +5
import { Backpack } from 'lucide-react';

export default function Custom404() {
return (
<div
Copy link

Copilot AI Apr 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This app now has both App Router (app/not-found.tsx) and a Pages Router pages/404.tsx. In this repo, pages/404.tsx is used in some apps specifically as a static export workaround (overriding Next’s internal _error). Consider adding a short file header comment explaining why pages/404.tsx exists here and how it relates to app/not-found.tsx to avoid accidental deletion later.

Copilot uses AI. Check for mistakes.
Comment thread apps/admin/pages/500.tsx
Comment on lines +1 to +5
import { AlertTriangle } from 'lucide-react';

export default function Custom500() {
return (
<div
Copy link

Copilot AI Apr 16, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Similar to pages/404.tsx, pages/500.tsx can look redundant in an App Router app. Consider adding a brief header comment noting if this file is intentionally present for static export / internal _error override behavior (as seen in other apps in this repo), so future refactors don’t remove it unintentionally.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file mobile web

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants