Skip to content

Conversation

toothlessdev
Copy link
Collaborator

@toothlessdev toothlessdev commented Sep 16, 2025

✅ Linked Issue

Summary by CodeRabbit

  • New Features

    • Introduced maintenance mode: when enabled via environment setting, visitors are redirected to a dedicated maintenance page; normal browsing is unaffected when disabled.
    • Added a maintenance page with updated guidance in Korean, including exam mode details, application link (Google Forms), and links to official channels (KakaoTalk, Instagram).
  • Chores

    • Removed the automatic global announcement overlay shown on app startup to streamline the initial user experience.

@toothlessdev toothlessdev self-assigned this Sep 16, 2025
Copy link

vercel bot commented Sep 16, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
mosu-client Ready Ready Preview Comment Sep 16, 2025 10:28am

Copy link

coderabbitai bot commented Sep 16, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

Introduces a Next.js middleware to gate traffic via a maintenance mode flag, adds a static maintenance page, and removes a previously auto-rendered global overlay from the app bootstrap. Requests are redirected to /maintenance during maintenance mode; otherwise, normal routing proceeds.

Changes

Cohort / File(s) Summary
Middleware for maintenance mode
mosu-app/src/middleware.ts
Adds middleware with matcher excluding API/static/image/favicon routes. Reads MAINTENANCE_MODE env; redirects all non-/maintenance paths to /maintenance when active; otherwise continues request. Exports config and middleware.
Maintenance page
mosu-app/src/pages/maintenance.tsx
Adds static Tailwind-styled maintenance/announcement page with sections, external links, and Google Forms reservation link. Exports default MaintenancePage.
Removal of global overlay
mosu-app/src/pages/_app.tsx
Removes useOverlay import, initialization, content, and render call. App bootstrap remains otherwise unchanged (providers/layout/analytics/toast).

Sequence Diagram(s)

sequenceDiagram
  autonumber
  participant U as User
  participant B as Browser
  participant MW as Next.js Middleware
  participant APP as Next.js App Router/Pages
  participant M as /maintenance Page

  U->>B: Navigate to any route
  B->>MW: HTTP request
  alt MAINTENANCE_MODE === "true"
    alt Request path !== "/maintenance"
      MW-->>B: Redirect to /maintenance (302)
      B->>MW: GET /maintenance
      MW-->>APP: Next()
      APP-->>M: Render MaintenancePage
      M-->>B: HTML
    else Request path === "/maintenance"
      MW-->>APP: Next()
      APP-->>M: Render MaintenancePage
      M-->>B: HTML
    end
  else Maintenance mode off
    MW-->>APP: Next()
    APP-->>B: Render requested page
  end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Suggested labels

우선순위 (상)

Suggested reviewers

  • kimgho

Poem

A hush falls over the burrowed site—
Flip goes a flag, we dim the light.
To /maintenance we gently steer,
While overlays hop out of here.
Carrots queued, the forms await,
We’ll spring back soon—ship date’s great! 🥕✨

✨ Finishing touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix#397

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 484143b and 2f4bece.

📒 Files selected for processing (3)
  • mosu-app/src/middleware.ts (1 hunks)
  • mosu-app/src/pages/_app.tsx (0 hunks)
  • mosu-app/src/pages/maintenance.tsx (1 hunks)

Tip

👮 Agentic pre-merge checks are now available in preview!

Pro plan users can now enable pre-merge checks in their settings to enforce checklists before merging PRs.

  • Built-in checks – Quickly apply ready-made checks to enforce title conventions, require pull request descriptions that follow templates, validate linked issues for compliance, and more.
  • Custom agentic checks – Define your own rules using CodeRabbit’s advanced agentic capabilities to enforce organization-specific policies and workflows. For example, you can instruct CodeRabbit’s agent to verify that API documentation is updated whenever API schema files are modified in a PR. Note: Upto 5 custom checks are currently allowed during the preview period. Pricing for this feature will be announced in a few weeks.

Please see the documentation for more information.

Example:

reviews:
  pre_merge_checks:
    custom_checks:
      - name: "Undocumented Breaking Changes"
        mode: "warning"
        instructions: |
          Pass/fail criteria: All breaking changes to public APIs, CLI flags, environment variables, configuration keys, database schemas, or HTTP/GraphQL endpoints must be documented in the "Breaking Change" section of the PR description and in CHANGELOG.md. Exclude purely internal or private changes (e.g., code not exported from package entry points or explicitly marked as internal).

Please share your feedback with us on this Discord post.


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.

@toothlessdev toothlessdev merged commit 9bfcf1e into main Sep 16, 2025
5 of 6 checks passed
@toothlessdev toothlessdev deleted the fix#397 branch September 16, 2025 10:29
Copy link

Warnings
⚠️ PR에 Reviewers가 지정되어 있지 않습니다. 리뷰어를 지정해주세요.
⚠️ PR에 라벨이 지정되어 있지 않습니다. 적절한 라벨을 추가해주세요.
Messages
📖 ✅ PR 제목에 이슈 번호가 포함되어 있습니다.
📖 ✅ PR에 Assignees가 지정되어 있습니다.
📖 ✅ package.json에 변경사항이 없습니다.
📖 ✅ 브랜치 이름 'fix#397'이 컨벤션을 따릅니다.
📖 ✅ TypeScript 컴파일이 성공적으로 완료되었습니다.
📖 ✅ ESLint 검사 결과 문제가 없습니다.

📝 추가 및 변경된 파일

총 3개 파일 변경

└── 📂 mosu-app/
    └── 📂 src/
        ├── 📂 pages/
        │   ├── ⚛️ _app.tsx
        │   └── ⚛️ maintenance.tsx
        └── 📘 middleware.ts

Generated by 🚫 dangerJS against 2f4bece

Copy link

📚 Storybook이 Chromatic에 배포되었습니다!

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