infrasynth-backend-kit/infrasynth/features/urls.py
jcv-dev a2930426b4 feat: tenant configs, live signals, and automatic permission management
- infrasynth.configs: typed multi-tenant config store (registry, service,
  secrets, cache) + public config_changed/config_reset signals and API
- emit the declared-but-dead signals (features flags/overrides, scheduler
  task_completed/task_failed, tenancy tenant_updated, audit model_changed)
  and per-model audit field exclusions
- security: permission catalog (security_permission), Django-style
  model-derived AutoPermission, PermissionRegistry, RoleAssignment,
  global-or-tenant Grant/Revoke, catalog API
- consolidate the permission surface: PermissionRegistry only (drop the
  settings dict), IsAuthenticatedAndPermitted aliases HybridPermission,
  require_permission replaced by required_permissions + require_all
- packaging: add [build-system]; add Forgejo publish workflow (.forgejo)
2026-09-29 17:06:54 -05:00

14 lines
542 B
Python

from django.urls import include, path
from rest_framework.routers import DefaultRouter
from .views import FeatureFlagOverrideViewSet, FeatureFlagViewSet
router = DefaultRouter()
# Register the "overrides" collection before the empty-prefix viewset; otherwise
# the flags detail route ``^(?P<pk>[^/.]+)/$`` shadows ``overrides/``.
router.register(r"overrides", FeatureFlagOverrideViewSet, basename="feature-overrides")
router.register(r"", FeatureFlagViewSet, basename="feature-flags")
urlpatterns = [
path("", include(router.urls)),
]