1.8 KiB
1.8 KiB
| trigger | description |
|---|---|
| always_on | Governance rules for flask — compiled from governance.md by crag |
Windsurf Rules — flask
Generated from governance.md by crag. Regenerate: crag compile --target windsurf
Project
(No description)
Stack: python
Runtimes
python
Cascade Behavior
When Windsurf's Cascade agent operates on this project:
- Always read governance.md first. It is the single source of truth for quality gates and policies.
- Run all mandatory gates before proposing changes. Stop on first failure.
- Respect classifications. OPTIONAL gates warn but don't block. ADVISORY gates are informational.
- Respect path scopes. Gates with a
path:annotation must run from that directory. - No destructive commands. Never run rm -rf, dd, DROP TABLE, force-push to main, curl|bash, docker system prune.
-
- No hardcoded secrets — grep for sk_live, AKIA, password= before commit
- Follow the project commit conventions.
Quality Gates (run in order)
uv run ruff check .uv run ruff format --check .uv run mypy .uv run tox runpython -m builduv run --locked --no-default-groups --group pre-commit pre-commit run --show-diff-on-failure --color=always --all-filesuv run --locked --no-default-groups --group dev tox runuv run --locked --no-default-groups --group dev tox run -e typing
Rules of Engagement
- Minimal changes. Don't rewrite files that weren't asked to change.
- No new dependencies without explicit approval.
- Prefer editing existing files over creating new ones.
- Always explain non-obvious changes in commit messages.
- Ask before destructive operations (delete, rename, migrate schema).
Tool: crag — https://www.npmjs.com/package/@whitehatd/crag