Prisma's generated `types.py` file is 57,000+ lines with complex
recursive TypedDict definitions that exhaust Pyright's type inference
budget. This causes random type errors and makes the type checker
unreliable.
### Changes 🏗️
- Add `gen_prisma_types_stub.py` script that generates a lightweight
`.pyi` stub file
- The stub preserves safe types (Literal, TypeVar) while collapsing
complex TypedDicts to `dict[str, Any]`
- Integrate stub generation into all workflows that run `prisma
generate`:
- `platform-backend-ci.yml`
- `claude.yml`
- `claude-dependabot.yml`
- `copilot-setup-steps.yml`
- `docker-compose.platform.yml`
- `Dockerfile`
- `Makefile` (migrate & reset-db targets)
- `linter.py` (lint & format commands)
- Add `gen-prisma-stub` poetry script entry
- Fix two pre-existing type errors that were previously masked:
- `store/db.py`: Replace private type
`_StoreListingVersion_version_OrderByInput` with dict literal
- `airtable/_webhook.py`: Add cast for `Serializable` type
### Checklist 📋
#### For code changes:
- [x] I have clearly listed my changes in the PR description
- [x] I have made a test plan
- [x] I have tested my changes according to the test plan:
- [x] Run `poetry run format` - passes with 0 errors (down from 57+)
- [x] Run `poetry run lint` - passes with 0 errors
- [x] Run `poetry run gen-prisma-stub` - generates stub successfully
- [x] Verify stub file is created at correct location with proper
content
#### For configuration changes:
- [x] `.env.default` is updated or already compatible with my changes
- [x] `docker-compose.yml` is updated or already compatible with my
changes
- [x] I have included a list of my configuration changes in the PR
description (under **Changes**)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Chores**
* Added a lightweight Prisma type-stub generator and integrated it into
build, lint, CI/CD, and container workflows.
* Build, migration, formatting, and lint steps now generate these stubs
to improve type-checking performance and reduce overhead during builds
and deployments.
* Exposed a project command to run stub generation manually.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This unbreaks the Claude Code and Copilot workflows in our repo.
- Follow-up to #11288
### Changes 🏗️
- Update `node-version` on `actions/setup-node@v4` from v21 to v22
This PR transforms GitHub Copilot from a general coding assistant into a
platform-specific expert by providing comprehensive onboarding and a
fully configured development environment that mirrors the AutoGPT
platform's CI/CD pipeline.
## Key Features
### CI-Aligned Development Environment
- **Production-Grade Setup**: The `copilot-setup-steps.yml` workflow now
mirrors the platform's CI workflows, providing Copilot with the same
environment used for testing and deployment
- **Essential Services**: Automatically starts Docker services
(PostgreSQL, Redis, RabbitMQ, ClamAV) required for platform development
- **Database Readiness**: Includes Prisma migrations and client
generation to ensure the database is immediately usable
- **Environment Configuration**: Copies default environment files and
validates service health, eliminating manual setup steps
### Comprehensive Platform Knowledge
- **Unified Documentation**: The `copilot-instructions.md` file
integrates knowledge from multiple sources (installer.md,
advanced_setup.md, CLAUDE.md, AGENTS.md) into a single comprehensive
guide
- **Development Patterns**: Includes advanced patterns for block
development, API creation, frontend work, and security implementation
- **Architecture Insights**: Provides deep understanding of the agent
block system, database schema, middleware, and CI/CD workflows
- **Troubleshooting Guide**: Comprehensive error handling and validation
steps based on production experience
### Enhanced Development Workflow
```bash
# Before: Trial-and-error dependency installation
# After: Fully configured environment ready immediately
# Copilot now understands:
poetry run serve # Backend server (port 8000)
pnpm dev # Frontend server (port 3000)
docker compose up -d # Essential services
poetry run pytest backend/blocks/test/test_block.py -xvs # Block validation
```
## Benefits
This configuration provides Copilot with:
- **Immediate Productivity**: No time wasted on environment setup or
dependency discovery
- **Platform Expertise**: Deep understanding of AutoGPT's architecture,
security patterns, and development workflows
- **CI Consistency**: Local development environment matches production
testing environment
- **Comprehensive Context**: Access to all platform documentation and
development patterns in a single source
The setup eliminates the slow trial-and-error process typical of
LLM-based development tools and ensures Copilot works efficiently from
the first interaction.
## References
- [GitHub Copilot Agent Environment
Setup](https://docs.github.com/en/copilot/how-tos/use-copilot-agents/coding-agent/customize-the-agent-environment#preinstalling-tools-or-dependencies-in-copilots-environment)
- [AutoGPT Platform CI Workflows](.github/workflows/)
- [Platform Development Guide](autogpt_platform/CLAUDE.md)
<!-- START COPILOT CODING AGENT TIPS -->
---
💡 You can make Copilot smarter by setting up custom instructions,
customizing its development environment and configuring Model Context
Protocol (MCP) servers. Learn more [Copilot coding agent
tips](https://gh.io/copilot-coding-agent-tips) in the docs.
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: ntindle <8845353+ntindle@users.noreply.github.com>
Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Nicholas Tindle <nicktindle@outlook.com>
Co-authored-by: Reinier van der Leer <pwuts@agpt.co>