Skip to main content

odoo-copilot-evals

Expand Odoo copilot test coverage to 50+ cases including adversarial, permission, edge case, and regression tests

Jump to install

Source facts

Repository
Insightpulseai/odoo
Last source activity
April 12, 2026 at 11:56
Detected SKILL.md language
English
Stars
6
Forks
2

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
2 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
odoo-copilot-evals
description
Expand Odoo copilot test coverage to 50+ cases including adversarial, permission, edge case, and regression tests
version
1.0
compatibility
{"hosts":["github-copilot","claude-code","codex-cli","cursor","gemini-cli"]}
tags
["evals","odoo","security","governance"]
# odoo-copilot-evals **Impact tier**: P2 -- Quality / Accuracy ## Purpose Close the copilot evaluation gap where the Odoo copilot module has only 2 test files covering basic conversation and gateway functionality. The benchmark audit found: no adversarial prompt tests, no regression gate, fewer than 5 test cases total. Target: 50+ test cases covering happy path, edge cases, adversarial prompts, and tool execution validation. ## When to Use - Expanding copilot test coverage after initial implementation. - Adding adversarial prompt testing (injection, exfiltration, privilege escalation). - Implementing regression gates in CI for copilot behavior. - Preparing for copilot go-live readiness review. ## Required Evidence (inspect these repo paths first) | Path | What to look for | |------|-----------------| | `addons/ipai/ipai_odoo_copilot/tests/` | Existing test files and test count | | `addons/ipai/ipai_odoo_copilot/models/` | Copilot models (conversation, message, tool_executor) | | `addons/ipai/ipai_odoo_copilot/controllers/` | Gateway controller | | `addons/ipai/ipai_odoo_copilot/services/` | Service layer | | `addons/ipai/ipai_odoo_copilot/__manifest__.py` | Dependencies, version | | `docs/audits/ODOO_AZURE_ENTERPRISE_BENCHMARK.md` | Copilot eval gap row | ## Microsoft Learn MCP Usage Run at least these three queries: 1. `microsoft_docs_search("Azure AI Foundry evaluation metrics LLM")` -- retrieves evaluation frameworks for LLM-powered features. 2. `microsoft_docs_search("prompt injection detection Azure AI Content Safety")` -- retrieves adversarial prompt detection patterns. 3. `microsoft_docs_search("Azure AI red teaming LLM application")` -- retrieves red team testing methodology for AI features. Optional: 4. `microsoft_docs_fetch("https://learn.microsoft.com/en-us/azure/ai-studio/concepts/evaluation-metrics-built-in")` 5. `microsoft_docs_search("responsible AI testing checklist Azure")` ## Workflow 1. **Inspect repo** -- Read existing test files. Count test methods. Identify what is covered (conversation CRUD, gateway HTTP) and what is missing (tool execution, adversarial, error handling, permission checks). 2. **Query MCP** -- Run the three searches. Capture evaluation metric categories, prompt injection patterns to test, red team methodology. 3. **Compare** -- Map current test coverage against target categories: - Happy path: conversation create, message send, tool execute (basic) - Edge cases: empty input, max length, unicode, concurrent sessions - Adversarial: prompt injection, role confusion, data exfiltration attempts - Permission: non-copilot-user access, sudo escalation, cross-company - Regression: known-good responses for specific business queries 4. **Patch** -- Create test files: - `tests/test_copilot_tool_execution.py` (10+ tests) - `tests/test_copilot_adversarial.py` (10+ tests) - `tests/test_copilot_permissions.py` (10+ tests) - `tests/test_copilot_edge_cases.py` (10+ tests) - `tests/test_copilot_regression.py` (10+ tests) Update `tests/__init__.py` to import all new test modules. 5. **Verify** -- Total test count >= 50. All test files import cleanly. `python3 -m py_compile` passes on every test file. Adversarial category has at least 10 distinct prompt injection patterns. ## Outputs | File | Change | |------|--------| | `addons/ipai/ipai_odoo_copilot/tests/test_copilot_tool_execution.py` | Tool exec tests (new) | | `addons/ipai/ipai_odoo_copilot/tests/test_copilot_adversarial.py` | Adversarial tests (new) | | `addons/ipai/ipai_odoo_copilot/tests/test_copilot_permissions.py` | Permission tests (new) | | `addons/ipai/ipai_odoo_copilot/tests/test_copilot_edge_cases.py` | Edge case tests (new) | | `addons/ipai/ipai_odoo_copilot/tests/test_copilot_regression.py` | Regression tests (new) | | `addons/ipai/ipai_odoo_copilot/tests/__init__.py` | Updated imports | | `docs/evidence/<stamp>/odoo-copilot-evals/` | Test count, MCP excerpts | ## Completion Criteria - [ ] Total test method count across all files is >= 50. - [ ] At least 10 adversarial prompt injection test patterns exist. - [ ] Permission tests cover: non-copilot-user, sudo escalation, cross-company. - [ ] Edge case tests cover: empty input, max length, unicode, malformed JSON. - [ ] Regression tests include at least 5 known-good query-response pairs. - [ ] All test files pass `python3 -m py_compile`. - [ ] `tests/__init__.py` imports all new test modules. - [ ] Evidence directory contains test count summary and MCP excerpts.
View on GitHub