→ Deprecated API usage: detects v14/v15/v16 ORM
patterns that break silently in v17 — including
renamed methods, removed parameters, and changed
return types on core model methods
→ Broken XML inheritance: flags xpath expressions
targeting views that were restructured or renamed
in the target version — the most common source
of invisible UI breakage post-migration
→ Security CSV issues: validates ir.model.access.csv
structure, detects missing columns, wrong model
references, and group ID mismatches against the
target version's model registry
→ Renamed fields: cross-references custom field
usage against Odoo's official field rename manifest
for each version jump — flags every reference
that will produce a KeyError at runtime
→ Raw SQL risk: detects hardcoded table names in
env.cr.execute() calls that may have changed
between versions
→ Compute field patterns: flags deprecated
@api.depends usage and missing store= declarations
that behave differently in v17+