diff --git a/.opencode/agents/ca-implementer-codex.md b/.opencode/agents/ca-implementer-codex.md index b877d93c8..73074af80 100644 --- a/.opencode/agents/ca-implementer-codex.md +++ b/.opencode/agents/ca-implementer-codex.md @@ -64,12 +64,25 @@ Follow these rules strictly: 1. Read and understand the subtask requirements. 2. Read any existing code in the relevant modules to understand the current state. -3. Implement the required changes: +3. **Verify domain model fields exist (CRITICAL).** Before writing code that + references any field, method, or attribute on a domain model class, you + MUST verify it exists by reading the actual class definition. **Never + assume a field exists based solely on the issue description.** Issue + descriptions often describe *desired* behavior — the field may not yet + exist in the codebase. Specifically: + - Before accessing `model.some_field`, read the model class to confirm + `some_field` is defined. + - Before calling `service.some_method()`, read the service class to + confirm `some_method` exists with the expected signature. + - If a required field or method does not exist, you must CREATE it as + part of your implementation (including database schema changes if + needed), not just reference it and hope it exists. +4. Implement the required changes: - Write clean, well-typed Python code. - Follow the architectural patterns from the specification. - Add appropriate docstrings and inline comments for complex logic. -4. Do NOT write tests (separate agents handle testing). -5. Do NOT run nox or quality checks (separate agents handle this). +5. Do NOT write tests (separate agents handle testing). +6. Do NOT run nox or quality checks (separate agents handle this). ## Escalation Context diff --git a/.opencode/agents/ca-implementer-opus.md b/.opencode/agents/ca-implementer-opus.md index 597e71b36..02b516031 100644 --- a/.opencode/agents/ca-implementer-opus.md +++ b/.opencode/agents/ca-implementer-opus.md @@ -65,12 +65,25 @@ Follow these rules strictly: 1. Read and understand the subtask requirements. 2. Read any existing code in the relevant modules to understand the current state. -3. Implement the required changes: +3. **Verify domain model fields exist (CRITICAL).** Before writing code that + references any field, method, or attribute on a domain model class, you + MUST verify it exists by reading the actual class definition. **Never + assume a field exists based solely on the issue description.** Issue + descriptions often describe *desired* behavior — the field may not yet + exist in the codebase. Specifically: + - Before accessing `model.some_field`, read the model class to confirm + `some_field` is defined. + - Before calling `service.some_method()`, read the service class to + confirm `some_method` exists with the expected signature. + - If a required field or method does not exist, you must CREATE it as + part of your implementation (including database schema changes if + needed), not just reference it and hope it exists. +4. Implement the required changes: - Write clean, well-typed Python code. - Follow the architectural patterns from the specification. - Add appropriate docstrings and inline comments for complex logic. -4. Do NOT write tests (separate agents handle testing). -5. Do NOT run nox or quality checks (separate agents handle this). +5. Do NOT write tests (separate agents handle testing). +6. Do NOT run nox or quality checks (separate agents handle this). ## Escalation Context diff --git a/.opencode/agents/ca-implementer-sonnet.md b/.opencode/agents/ca-implementer-sonnet.md index 9a7139d1a..055d6b19f 100644 --- a/.opencode/agents/ca-implementer-sonnet.md +++ b/.opencode/agents/ca-implementer-sonnet.md @@ -64,12 +64,25 @@ Follow these rules strictly: 1. Read and understand the subtask requirements. 2. Read any existing code in the relevant modules to understand the current state. -3. Implement the required changes: +3. **Verify domain model fields exist (CRITICAL).** Before writing code that + references any field, method, or attribute on a domain model class, you + MUST verify it exists by reading the actual class definition. **Never + assume a field exists based solely on the issue description.** Issue + descriptions often describe *desired* behavior — the field may not yet + exist in the codebase. Specifically: + - Before accessing `model.some_field`, read the model class to confirm + `some_field` is defined. + - Before calling `service.some_method()`, read the service class to + confirm `some_method` exists with the expected signature. + - If a required field or method does not exist, you must CREATE it as + part of your implementation (including database schema changes if + needed), not just reference it and hope it exists. +4. Implement the required changes: - Write clean, well-typed Python code. - Follow the architectural patterns from the specification. - Add appropriate docstrings and inline comments for complex logic. -4. Do NOT write tests (separate agents handle testing). -5. Do NOT run nox or quality checks (separate agents handle this). +5. Do NOT write tests (separate agents handle testing). +6. Do NOT run nox or quality checks (separate agents handle this). ## Escalation Context