Implements space composition and inheritance features: - SpaceReference model for space-to-space references (includes, extends, links_to, composed_of) - Variable inheritance through parent chain with local override - Config inheritance with source tracking - Access control models (SpacePermission, SpaceRole, AccessLevel) - InheritanceResolver for walking parent chains - AccessControlService for permission management - ComposableSpaceService integrating all composability features - Circular reference detection for EXTENDS references - SQLite repositories for references and permissions - 57 comprehensive unit tests Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
50 lines
1.1 KiB
Python
50 lines
1.1 KiB
Python
"""
|
|
Composability module for Information Spaces.
|
|
|
|
Provides space-to-space references, variable/config inheritance,
|
|
and basic access control for the Information Space system.
|
|
"""
|
|
|
|
from .models import (
|
|
SpaceReference,
|
|
SpaceReferenceType,
|
|
SpacePermission,
|
|
SpaceRole,
|
|
AccessLevel,
|
|
SpaceAccess,
|
|
InheritedVariable,
|
|
InheritedConfig,
|
|
)
|
|
from .service import (
|
|
ComposableSpaceService,
|
|
InheritanceResolver,
|
|
AccessControlService,
|
|
)
|
|
from .repository import (
|
|
ISpaceReferenceRepository,
|
|
IAccessControlRepository,
|
|
SqliteSpaceReferenceRepository,
|
|
SqliteAccessControlRepository,
|
|
)
|
|
|
|
__all__ = [
|
|
# Models
|
|
"SpaceReference",
|
|
"SpaceReferenceType",
|
|
"SpacePermission",
|
|
"SpaceRole",
|
|
"AccessLevel",
|
|
"SpaceAccess",
|
|
"InheritedVariable",
|
|
"InheritedConfig",
|
|
# Services
|
|
"ComposableSpaceService",
|
|
"InheritanceResolver",
|
|
"AccessControlService",
|
|
# Repositories
|
|
"ISpaceReferenceRepository",
|
|
"IAccessControlRepository",
|
|
"SqliteSpaceReferenceRepository",
|
|
"SqliteAccessControlRepository",
|
|
]
|