towerops/lib/towerops/organizations
Graham McIntire 2528e78ff9 refactor: extract per-schema Query modules for organization_id filters
Adds 7 new composable Query modules following the existing
DeviceQuery/AlertQuery pattern. Each exposes base/0 and for_organization/1,2
plus filters used by 2+ callers.

New modules:
- Towerops.OnCall.ScheduleQuery
- Towerops.OnCall.EscalationPolicyQuery
- Towerops.Maintenance.MaintenanceWindowQuery
- Towerops.Organizations.MembershipQuery
- Towerops.Organizations.InvitationQuery
- Towerops.Agents.AgentTokenQuery
- Towerops.Gaiia.DeviceSubscriberLinkQuery

Refactors callsites in alerts, agents, devices, gaiia, maintenance, on_call,
organizations, search, and subscription_limits to use existing or new Query
modules instead of inline 'where: x.organization_id == ^...' clauses.
2026-04-30 14:26:30 -05:00
..
invitation.ex Add granular org roles: executive, technician 2026-02-15 17:40:53 -06:00
invitation_query.ex refactor: extract per-schema Query modules for organization_id filters 2026-04-30 14:26:30 -05:00
membership.ex Add granular org roles: executive, technician 2026-02-15 17:40:53 -06:00
membership_query.ex refactor: extract per-schema Query modules for organization_id filters 2026-04-30 14:26:30 -05:00
organization.ex feat: add per-organization data retention with 1-year default (#144) 2026-03-24 15:30:43 -05:00
policy.ex refactor: convert 6 Gleam modules to idiomatic Elixir with TDD (#196) 2026-03-28 09:52:07 -05:00
subscription_limits.ex refactor: extract per-schema Query modules for organization_id filters 2026-04-30 14:26:30 -05:00