Skip to content

Conversation

@spashii
Copy link
Member

@spashii spashii commented Nov 27, 2025

Summary by CodeRabbit

  • Chores
    • Optimized CI pipeline caching for faster build and deployment cycles.
    • Enhanced server infrastructure with improved asynchronous request handling for better performance and reliability.

✏️ Tip: You can customize this high-level summary in your review settings.

@spashii spashii merged commit b3f300f into main Nov 27, 2025
6 of 8 checks passed
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 27, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

Adds mypy caching to the server CI job for faster build cycles, and introduces AsyncioUvicornWorker, a custom Gunicorn worker class that enforces asyncio loop mode for Uvicorn.

Changes

Cohort / File(s) Change Summary
CI Workflow Enhancement
.github/workflows/ci.yml
Adds mypy cache step to ci-check-server job with OS and dependency hash-based cache keys (echo/server/pyproject.toml, echo/server/requirements.lock) for cache invalidation. Minor formatting adjustment in build-push job.
Gunicorn Worker Implementation
echo/server/dembrane/gunicorn_worker.py
New module introducing AsyncioUvicornWorker class extending UvicornWorker with CONFIG_KWARGS override setting loop to "asyncio" and http to "auto". Includes usage documentation.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • CI cache configuration is standard actions/cache@v4 usage with straightforward key strategy
  • AsyncioUvicornWorker is a thin wrapper extending existing UvicornWorker with minimal configuration override—minimal logic density

Possibly related PRs

Suggested labels

improvement

✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch fix-mypy-cache-and-worker-27-nov

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: ASSERTIVE

Plan: Pro

Disabled knowledge base sources:

  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 6ba77b5 and b6e628c.

📒 Files selected for processing (2)
  • .github/workflows/ci.yml (2 hunks)
  • echo/server/dembrane/gunicorn_worker.py (1 hunks)

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.

@spashii spashii deleted the fix-mypy-cache-and-worker-27-nov branch November 27, 2025 12:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants