Commit Graph

3 Commits

Author SHA1 Message Date
tocmo0nlord
935394620b Rename module to activeblue_familylaw_v2 (coexist with legacy prod module)
Production already has a DIFFERENT, earlier module installed as `activeblue_familylaw`
(models fl.*, real data). Renamed this build's technical name to
`activeblue_familylaw_v2` so it installs ALONGSIDE the legacy app instead of replacing
it. Models (familylaw.*) and test tags (familylaw_step<N>) are unchanged — only the
module name and its group XML IDs change.

Changes:
- Folder activeblue_familylaw -> activeblue_familylaw_v2 (git mv)
- All 44 dotted refs activeblue_familylaw. -> activeblue_familylaw_v2.
  (security group XML IDs in views/python; test patch targets odoo.addons.*)
- Manifest display name -> "Active Blue Family Law v2"; root menu -> "Family Law (v2)"
- scripts/validate_module.py ROOT path; BUILD_STATUS.md run commands + coexistence
  note; START_HERE.md pointer

Verified in live Odoo 18:
- Fresh install + full suite: 200 tests, 0 failed, 0 errors.
- COEXISTENCE on a clone of prod db1: installing _v2 alongside the installed legacy
  activeblue_familylaw left the legacy untouched (still installed 18.0.1.0.0, fl.*
  models registered, fl_caselaw 25 rows intact) while adding the 30 familylaw.* models.
  Exit 0, no errors. Clone dropped; prod DBs untouched.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-02 11:23:34 +00:00
tocmo0nlord
6448491e76 Make test suite green in live Odoo 18 (198 tests, 0 failures)
Ran the full familylaw suite in a one-off odoo:18.0 container against an isolated
throwaway DB. Fixes found and applied:

- All mail.thread-only models also inherit mail.activity.mixin — their form chatters
  reference activity_ids (install-time ParseError on familylaw.deadline et al.).
- familylaw.archive.is_destruction_eligible: added a `search` method (non-stored
  computed boolean used in a search-view filter domain was unsearchable).
- familylaw.archive.action_destroy: sudo() the ir.attachment unlink (attorney isn't
  the attachment owner -> AccessError on destroy).
- test_step2 test_10: use relativedelta(years=8) not 365*8 days (leap-year drift made
  age compute to 7; the age code is correct).
- familylaw.ai.generate failure path: keep best-effort failed-state write but document
  that it rolls back with the failing txn; the real guarantee is error PROPAGATION.
  test_step6 test_07 rewritten to assert the provider error propagates (never silently
  swallowed) rather than asserting non-durable persistence.

BUILD_STATUS.md updated: tests now verified green in live Odoo.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-02 05:39:24 +00:00
tocmo0nlord
45e59de446 Add BUILD_STATUS.md — Steps 1-14 complete, how to run tests, gate + VERIFY notes
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-02 05:08:11 +00:00