47 lines
2.9 KiB
Markdown
47 lines
2.9 KiB
Markdown
# SOP Agent Operations — Standing Rules
|
|
|
|
## Core Agent Rules
|
|
1. Default to P0. Do not implement P1/P2 unless explicitly requested.
|
|
2. Preserve traceability: commit messages, PR descriptions, tests, and review notes must cite decision/requirement IDs.
|
|
3. Make the smallest compliant change. Avoid architecture invention.
|
|
4. If requirements conflict, precedence is: Product Decision Register > SysRS > SysDes > SRS > SAD > SDD > Verification/Release/Security docs.
|
|
5. If a task requires exact historical detail, inspect `phase_index.json`; do not load the obsolete full bundle.
|
|
|
|
## Required Review Gates
|
|
- Architecture boundary review for Flutter/Rust/bridge/protocol/storage/audio changes.
|
|
- Privacy review for diagnostics, logging, crash handling, analytics, upload, identifiers, or support artifacts.
|
|
- Security review for secure storage, redaction, secrets, dependencies, and supply chain.
|
|
- Release review for platform build, signing, SDK, store, and artifact policy.
|
|
- Localization review for product strings and server-content preservation.
|
|
|
|
## Testing SOP
|
|
- Unit tests: Rust core, DTO transforms, storage, redaction, decision logic.
|
|
- Widget tests: Material 3 components, state tokens, localization, accessibility semantics, adaptive layouts.
|
|
- Integration tests: bridge events/errors, protocol adapter state, diagnostics export, storage migration.
|
|
- Platform tests: secure storage, audio capture/playback, permissions, hotkeys/PTT, packaging.
|
|
- Acceptance tests: use platform P0 acceptance docs before any release promotion.
|
|
|
|
## Build SOP
|
|
- Keep repo layout canonical: `apps/chanora_flutter/`, `core/chanora_core/`, `crates/chanora_*`.
|
|
- Pin `flutter_rust_bridge` 2.x.
|
|
- Use bundled `rusqlite` for embedded SQLite.
|
|
- Android minSdk = 28; target API must match current Google Play requirement on upload date.
|
|
- iOS minimum = 13; App Store upload SDK gate must be checked on actual upload date.
|
|
|
|
## Privacy/Security SOP
|
|
- No telemetry in MVP.
|
|
- No crash reporting unless approved.
|
|
- No automatic diagnostic upload.
|
|
- Diagnostics are local export only and must redact secrets.
|
|
- Product-owned strings may be localized; server-originated content must be preserved verbatim.
|
|
- Secrets never enter logs, diagnostics, SQLite, screenshots, or crash-like artifacts.
|
|
|
|
## Release SOP
|
|
- Release sequence: Internal Alpha -> External Beta -> MVP Public.
|
|
- Public/store release requires legal/trademark/OSS license confirmation.
|
|
- Staged platform release is allowed when documented.
|
|
- Every release must include version, commit/tag, artifact list, known issues, test evidence, and go/no-go result.
|
|
|
|
## Agent Refusal / Escalation Conditions
|
|
Stop implementation and ask for owner approval when asked to add or change: telemetry, crash reporting, diagnostic uploads, backend service, multi-server active sessions, platform scope, license, trademark/non-affiliation text, secret-storage policy, or target SDK/minimum OS baseline.
|