Boundary Model

Vollständige Referenz des IIO Boundary Layers — 4 Boundary-Typen, Zugriffskontrolle, Violation-Handling, Grant-Management und Transitions.

1. Was ist eine Boundary?1. What is a Boundary?

Eine Boundary ist ein spezifizierter Zugangskontroll-Mechanismus, der festlegt, welche Actors ein Target (Artefakt, Zustand, Composition, Story) wahrnehmen, damit interagieren oder verändern dürfen.

Role-based, nicht Actor-type-based: Human- und Agent-Actors respektieren identische Boundary-Regeln. Es gibt keine Sonderrechte aufgrund des Actor-Typs.

role-based access fail-closed default audit required temporal validity 3 permission levels: perceive / interact / modify

2. Die 4 Boundary-Typen2. The 4 Boundary Types

Internal Boundary

Nur Composition-Members. Absolute Grenze — kein Escape-Hatch. Alle Members sehen Composition-Interna.

perceive ✓ interact ✓ modify ✓ (per role)

Beispiel: Team-interne Projekt-Dateien

Semi-Permeable Boundary

Composition mit designierten externen Zugängen. Grants werden explizit erteilt und können ablaufen.

perceive ✓ (designated) interact ✓ (per grant) modify ✗ (read-only / controlled)

Beispiel: Externer Auditor sieht Compliance-Artefakte

Federated Boundary

Composition-zu-Composition-Koordination via Delegates. Jede Composition behält volle Autonomie.

perceive ✓ (delegation interface) interact ✓ (delegates coordinate) modify ✗ (propose only; home team decides)

Beispiel: Zwei Teams koordinieren ein geteiltes Feature

Boundary-Less (Private)

Privater Raum eines Individual Actors. Kein externer Zugriff — außer bei freiwilliger Transparenz.

perceive ✓ (self only) interact ✓ (self only) modify ✓ (self only)

Beispiel: Lokaler Dev-Workspace vor Team-Publikation

3. Boundary YAML-Schemata3. Boundary YAML Schemas

Semi-Permeable Grant (vollständig)Semi-Permeable Grant (complete)

boundary_type: semi_permeable
scope: composition_with_grants
actors_allowed:
  - role: observer_external
    actors: [stakeholder_org_x, qa_contractor_y]
    granted_at: 2024-01-01T00:00:00Z
    expires_at: 2024-12-31T23:59:59Z   # oder "never"
    granted_by: composition_lead_alice
    basis: "Audit Q1 2024 — compliance review"
  - role: reviewer_external
    actors: [auditor_z]
    granted_at: 2024-03-15T09:00:00Z
    expires_at: never

access_grant:
  perceive: true     # nur designierten Artefakten/Zuständen
  interact: true     # kann anfordern/kommentieren per Role
  modify: false      # kein Schreibzugriff

governance_model:
  grant_by: composition_lead + external_stakeholder_consent
  duration: temporary | permanent
  audit: all_access_logged_in_transaction_log
  boundary_can_shift: true  # wenn Role oder Term ändert sich

Federated Boundary (vollständig)Federated Boundary (complete)

boundary_type: federated
scope: composition_to_composition_coordination
actors_allowed:
  - role: delegate_member
    representing: composition_team_frontend
  - role: delegate_member
    representing: composition_team_backend

access_grant:
  perceive: true   # jede Composition sieht andere Delegation-Interface
  interact: true   # Delegates können koordinieren
  modify: false    # Delegates schlagen vor; Heimteam entscheidet

governance_model:
  each_composition_retains_autonomy: true
  cross_composition_decision: consensus_or_veto
  transaction_credited_to: delegating_composition
  member_detail: which_delegate_executed

4. Zugriffskontrolle — 7-Gate Check (Fail-Closed)4. Access Control — 7-Gate Check (Fail-Closed)

Jede Access-Anforderung durchläuft diese 7 Gates in Reihenfolge. Erster Fail = DENY + Log.

Fail-Closed Default: Schlägt irgendein Gate fehl, wird der Zugang VERWEIGERT und als access_denied geloggt.

5. Violations & Eskalationspfad5. Violations & Escalation Path

role_missing (CRITICAL)

Actor hat keine gültige Role.
Aktion: sofortiges DENY + alert composition_lead

permission_denied (HIGH)

Role existiert, aber fehlt Permission auf Target.
Aktion: DENY + log + notify requester_role

boundary_expired (HIGH)

Semi-Permeable Grant ist abgelaufen.
Aktion: DENY + revoke access + audit_log

composition_dissolved (INFO)

Zugriff auf aufgelöste Composition (nur Archiv).
Aktion: deny_write + allow_read_archive + audit_log

unauthorized_external_access (CRITICAL)

Externer Actor versucht interne Boundary zu überwinden.
Aktion: DENY + alert_security + temp_block

EskalationspfadEscalation Path

Violation Detected
  │
  ├─ CRITICAL (unauthorized external access)
  │    → sofortiges DENY
  │    → Security Alert an composition_lead + ops
  │    → temporärer Block des Actors
  │
  ├─ HIGH (permission / expiration)
  │    → DENY + Notification an Owner
  │    → Ticket/Story erstellen für Follow-Up
  │
  └─ INFO (archive access attempt)
       → DENY write
       → READ archive erlaubt
       → log (kein Alert)

6. Boundary Transitions6. Boundary Transitions

Szenario: Role-Promotion (Contributor → Reviewer)Scenario: Role Promotion (Contributor → Reviewer)

Schritt 1: alice hat Role contributor (perceive_internal, interact_limited)
Schritt 2: Role-Assignment TX: alice bekommt reviewer (perceive_all, interact_full, modify_limited)
Schritt 3: boundary_recalculation — alice's Zugriffsrechte aktualisiert
   → Vorherige TXs sichtbar (retrospektiver Zugang gewährt)
   → Zukünftige TXs unter neuen Permissions validiert
Schritt 4: Audit — role_change TX aufgezeichnet, alice notifiziert
Kein blinder Retro-Access — alle Permission-Änderungen sind geloggt.

Szenario: Semi-Permeable Grant ExpiryScenario: Semi-Permeable Grant Expiry

Current State: auditor_z: role=reviewer_external, expires=2024-06-30
Date reaches 2024-07-01: System erkennt Ablauf
→ automatisches DENY für auditor_z
access_revoked TX geschrieben
→ composition_lead notifiziert
→ Grant-Verlängerung: neues explizites Grant-Objekt erforderlich (kein automatisches Renewal)

Szenario: Composition DissolutionScenario: Composition Dissolution

Dissolution TX committed: composition_team_old is dissolved
→ Alle Internal-Boundary Writes: DENY
→ Alle Internal-Boundary Reads: ALLOW (archive only, read-only)
→ Semi-Permeable Grants: alle automatisch expired
→ Federated Delegates: alle automatisch deactivated
→ Audit-Log: vollständige Dissolution-Eintrag (immutable)

7. Grant-Management Workflow7. Grant Management Workflow

Semi-Permeable Grants werden durch den folgenden kontrollierten Prozess verwaltet:

SchrittStepActorAktionActionTX-Type
1. Grant beantragenExterner ActorAccess-Request mit Begründung + Rollenvorschlagrequest
2. Grant prüfenComposition LeadReview der Begründung; Scope und Laufzeit festlegenapprove / reject
3. Grant konfigurierenSystem (angewiesen von Lead)Grant-Objekt in Boundary-Config schreibenmodify
4. Grant aktivExterner ActorZugriff gemäß Grant-Scope— (read/interact)
5. Grant überwachenSystemAblaufdatum prüfen; Warnmeldung vor Expiry— (automated check)
6. Grant verlängern / widerrufenComposition LeadNeues Grant-Objekt anlegen oder revoke TXcreate / modify

8. Boundary im Schichtenmodell8. Boundary in the Layer Model

Der Boundary Layer sitzt zwischen Transaction Layer und Skill Registry Layer — er schützt alle darunterliegenden Operationen.

LayerWas Boundary schütztWhat Boundary ProtectsBoundary-TypBoundary Type
FoundationCore-Workspace-ZugriffInternal (nur registrierte Actors)
Story LayerStory-Editing + PublishingInternal (Composition) + Semi-Permeable (Reviewer)
Role LayerRole-Assignment-TXsInternal (Lead/Owner only)
Composition LayerMember-Management + DissolutionInternal (strict) + Federated (between comps)
Transaction LayerTX-Approval + AuditInternal (Reviewer) + Semi-Perm (Auditor)
Skill RegistrySkill-Registrierung + ÄnderungInternal (Registry Ops Team)
Public OutputÖffentlich zugängliche ArtefakteBoundary-Less (read-only world)