Add Periscope Cursor engineering constitution and always-on rules.

Docs-only: master CODING_CONSTITUTION plus seven .mdc splits. Git policy is
phase = test then commit+push; deploy only after a macro-phase.
This commit is contained in:
2026-09-20 18:06:00 +02:00
parent 6d6e70cec0
commit 0533d4ebd2
8 changed files with 226 additions and 0 deletions
+14
View File
@@ -0,0 +1,14 @@
---
alwaysApply: true
---
# Periscope Cursor Engineering Rules
Mandatory for every Cursor agent working on Periscope. This section is copied from `docs/development/CODING_CONSTITUTION.md` and must not contradict that master.
## 3. Rust
- Periscopes product code is Python/TypeScript today. If a Rust crate is added, it is original Periscope code, not a paste of an AGPL PinScope module.
- Rust slices follow the same verify-then-switch rule: tests first, then wire into the Python/TS surface.
- Use `rustfmt` + `clippy` on that crate. No `unsafe` without a comment that names the invariant.
- Do not introduce Rust to dodge AGPL or to empty-delete Python in `dependency/`.