50 lines
1.6 KiB
Text
50 lines
1.6 KiB
Text
<!-- crag:auto-start -->
|
|
# Continue Rules — flask
|
|
|
|
> Generated from governance.md by crag. Regenerate: `crag compile --target continue`
|
|
|
|
|
|
|
|
## Project Context
|
|
|
|
- **Stack:** python
|
|
- **Runtimes:** python
|
|
- **Governance source:** `.claude/governance.md` (single source of truth)
|
|
|
|
## Coding Rules
|
|
|
|
Always follow these when generating or modifying code:
|
|
|
|
1. **Run gates before committing.** Every change must pass the mandatory gates below.
|
|
2. **Classifications matter:**
|
|
- `MANDATORY` — must pass (default)
|
|
- `OPTIONAL` — should pass, warn on failure
|
|
- `ADVISORY` — informational only
|
|
3. **Path-scoped gates** run from their declared directory.
|
|
4. **Conditional gates** only run when their referenced file exists.
|
|
5. **No secrets.** - No hardcoded secrets — grep for sk_live, AKIA, password= before commit
|
|
6. Follow project commit conventions.
|
|
|
|
## Quality Gates
|
|
|
|
- uv run ruff check .
|
|
- uv run ruff format --check .
|
|
- uv run mypy .
|
|
- uv run tox run
|
|
- python -m build
|
|
- uv run --locked --no-default-groups --group pre-commit pre-commit run --show-diff-on-failure --color=always --all-files
|
|
- uv run --locked --no-default-groups --group dev tox run
|
|
- uv run --locked --no-default-groups --group dev tox run -e typing
|
|
|
|
## Boundaries
|
|
|
|
- All file operations stay within this repository
|
|
- No destructive shell commands
|
|
- No new dependencies without justification
|
|
- Prefer editing existing files over creating new ones
|
|
|
|
## Powered by crag
|
|
|
|
This rule file is auto-generated from a single `governance.md` via **crag** (https://www.npmjs.com/package/@whitehatd/crag). To update, edit governance.md and re-run `crag compile --target continue`.
|
|
|
|
<!-- crag:auto-end -->
|