Skip to content

chore(security): declare spp_security explicitly in 4 modules that reference group_spp_admin transitively [from #261/#338 review] #427

Description

@gonzalesedwin1123

Hygiene follow-up surfaced during the batch-2 review of PR #261/#338 (the spp_dci case was fixed on PR #399). Several modules reference spp_security.group_spp_admin (or other spp_security xml_ids) in security XML but declare spp_security only transitively via spp_registry.

Severity: Low (robustness/hygiene — not a live vulnerability)

Problem

Load order and xml_id availability are only guaranteed through the declared dependency graph. A module that ref=s spp_security.group_spp_admin without declaring spp_security in depends resolves only because spp_registry (a declared dep) happens to depend on spp_security. If that transitive edge ever changes, a fresh install raises ValueError: External ID not found in the system: spp_security.group_spp_admin.

Modules to fix

Of the 33 modules extending spp_security.group_spp_admin, these lack a direct spp_security dependency (verified in the batch-2 review):

  • spp_disability_registry
  • spp_gis_report
  • spp_registry_search
  • spp_farmer_registry_demo (references via data/demo_users.xml)

(spp_dci was the fifth; fixed in PR #399's review response.)

Fix

Add "spp_security" to each module's __manifest__.py depends. One line each, zero runtime change (already in the dependency closure), no migration. Bump each module's patch version + HISTORY per the checklist.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions