gsinghpal aeea670064 feat(fusion_login_audit): add fusion.login.audit model
- All 16 columns per spec (user, attempted_login, result, failure_reason,
  event_time, ip/geo fields, user_agent triple, device_type, database).
- Check constraint binds failure_reason presence to result value.
- Three composite indexes (user+time, login+time, geo_state+time) supporting
  the per-user, failure-burst, and geo cron queries.
- Minimal admin-read ACL added so subsequent tests can verify writes.
- 3 TransactionCase tests passing: model create, failure_reason nullable on
  success, geo_lookup_state='internal' accepted.

Odoo 19 deprecation note: this implementation uses the declarative
models.Constraint and models.Index attributes (Odoo 19 silently drops the
legacy `_sql_constraints = [...]` list and `init()`/raw-SQL pattern with
only a warning). Captured in CLAUDE.md rule #9.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-27 09:03:58 -04:00
2026-05-16 13:18:52 -04:00
2026-05-21 03:37:25 -04:00
2026-05-23 07:53:41 -04:00
2026-05-22 18:01:31 -04:00
2026-05-10 10:25:12 -04:00
2026-05-04 02:17:47 -04:00
2026-05-21 03:37:25 -04:00
2026-05-26 19:17:57 -04:00
2026-05-11 03:20:31 -04:00
2026-05-21 03:37:25 -04:00
2026-05-21 03:37:25 -04:00
2026-05-12 09:08:34 -04:00
2026-05-13 08:17:35 -04:00
2026-05-23 07:53:41 -04:00
2026-05-16 13:07:50 -04:00
2026-05-26 19:17:57 -04:00
2026-05-10 10:25:12 -04:00
Description
Odoo 19 custom modules
219 MiB
Languages
Python 56.9%
HTML 24.9%
JavaScript 14.7%
SCSS 2.2%
CSS 0.8%
Other 0.4%