# Fidelity AI Workspace Rules This repository is a companion workspace for Fidelity iOS work, not the product codebase. OpenCode should treat this project as a persistent context layer used to: - keep current project state accurate - capture durable information from daily work - draft standups and Mattermost messages - improve communication for Jeff in natural US English ## Always-Loaded Context The detailed operating rules live in: - `ai/AGENTS.md` - `ai/context/project.md` - `ai/context/people/jeff.md` - `ai/state/current.md` - `knowledge/workspace-model.md` - `knowledge/communication-rules.md` These are also loaded through `opencode.json`. ## Required Behavior - Assume the workspace may contain stale context until checked. - Before answering questions that depend on current work state, inspect `ai/state/current.md` and the latest relevant log under `ai/logs/`. - If `ai/inbox/mattermost-latest.md` exists, inspect it for fresher communication context before answering standup, status, or manager-message prompts. - For any meaningful prompt, decide whether the interaction introduces or corrects project memory. - If a sync command, extraction script, or inbox refresh fails, do not update logs, state, or context files from that failed attempt. - Treat sync failures as operational errors, not project context. - `mattermost-sync` should automatically promote high-confidence project facts without asking what to promote. - Prefer `ai/logs/` as the default destination for new Mattermost-derived facts. - Promote to `ai/state/current.md` only when the fact materially changes active work over the next few days. - Promote to `ai/context/project.md` only when the fact changes durable project understanding. - Never promote tooling chatter, sync status, or generic conversation noise. - Direct user prompts are also memory sources. Do not limit memory updates to explicit sync commands. - If a new prompt corrects prior understanding, update the canonical file directly instead of keeping both versions alive. - Do not ask what should be saved when the correct destination is already clear. - If the user provides durable new facts, update the appropriate context files instead of leaving the new information only in chat history. - If a previous context file is now stale or inaccurate, update that file directly. - Prefer correcting canonical context over appending contradictory notes. - Keep changes concise and auditable. ## Communication When drafting or polishing messages: - use Context, Observation, Action when appropriate - clarify auth state when relevant - separate external reports from regressions - preserve technical meaning while improving English