Files
breakpilot-lehrer/klausur-service/backend/rbac.py
Benjamin Admin 6811264756 [split-required] Split final batch of monoliths >1000 LOC
Python (6 files in klausur-service):
- rbac.py (1,132 → 4), admin_api.py (1,012 → 4)
- routes/eh.py (1,111 → 4), ocr_pipeline_geometry.py (1,105 → 5)

Python (2 files in backend-lehrer):
- unit_api.py (1,226 → 6), game_api.py (1,129 → 5)

Website (6 page files):
- 4x klausur-korrektur pages (1,249-1,328 LOC each) → shared components
  in website/components/klausur-korrektur/ (17 shared files)
- companion (1,057 → 10), magic-help (1,017 → 8)

All re-export barrels preserve backward compatibility.
Zero import errors verified.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-24 23:17:30 +02:00

39 lines
860 B
Python

"""
RBAC/ABAC Policy System for Klausur-Service (barrel re-export)
This module was split into:
- rbac_types.py (Enums, data structures)
- rbac_permissions.py (Permission matrix)
- rbac_engine.py (PolicyEngine, default policies, API guards)
All public symbols are re-exported here for backwards compatibility.
"""
# Types and enums
from rbac_types import ( # noqa: F401
Role,
Action,
ResourceType,
ZKVisibilityMode,
EHVisibilityMode,
VerfahrenType,
PolicySet,
RoleAssignment,
KeyShare,
Tenant,
Namespace,
ExamPackage,
)
# Permission matrix
from rbac_permissions import DEFAULT_PERMISSIONS # noqa: F401
# Engine, policies, guards
from rbac_engine import ( # noqa: F401
PolicyEngine,
create_default_policy_sets,
get_policy_engine,
require_permission,
require_role,
)