Files
gh-christianlouis-inboxconv…/.github/copilot-instructions.md
T
copilot-swe-agent[bot] d66af4d8ef feat: Milestone 1 Security & Infrastructure improvements
- Add Dependabot configuration for pip, npm, GitHub Actions, Docker
- Update copilot instructions to require TODO.md and CHANGELOG.md updates
- Add unit tests for middleware, security, app factory, and schemas (125 total tests, 57% coverage)
- Update TODO.md with current progress
- Update CHANGELOG.md with all changes

Co-authored-by: christianlouis <361235+christianlouis@users.noreply.github.com>
Agent-Logs-Url: https://github.com/christianlouis/pop_puller_to_gmail/sessions/2f15a52f-6812-4586-9d5c-a144226c842b
2026-03-23 11:23:37 +00:00

39 lines
1.2 KiB
Markdown

# Copilot Instructions
## Linting Requirements
Before committing any changes, always run the relevant linters and fix all errors:
### Backend (Python)
```bash
# Check code formatting
black --check backend/
# Lint with ruff
ruff check backend/
# Type check with mypy
mypy backend/app --ignore-missing-imports
```
### Frontend (TypeScript/React)
```bash
cd frontend
npm run lint
```
## Documentation Requirements
When making changes, always update the following files:
- **`docs/TODO.md`**: Update task checkboxes, progress percentages, and status indicators to reflect completed work and any new items discovered.
- **`CHANGELOG.md`**: Add entries under the `[Unreleased]` section using the appropriate category (`Added`, `Changed`, `Fixed`, `Security`, `Removed`, `Deprecated`).
## Conventions
- **Python**: Follow PEP 8. Use `black` for formatting. All ruff and mypy errors must be resolved before committing.
- **TypeScript**: Follow the ESLint configuration. Avoid `any` types — use `unknown` with type narrowing instead. Remove unused variables and imports.
- **SQLAlchemy**: Use `# type: ignore[assignment]` for Column attribute assignments and `# noqa: E712` for `== True` comparisons in SQLAlchemy queries (these are valid ORM patterns).