Tägliche Administration: Objekte, Kunden, Projekte
Praxiskapitel für den Tagesbetrieb: Wie du Objekte korrekt anlegst, Kunden in öffentlich/privat trennst und Projekte sauber in der Layer-Logik führst. Mit SOPs und aufgesplittetem Objektbaum.
1. Kurzantwort: Gibt es dafür einen Layer?
Ja, aber nicht nur einen. Kunde/Projekt ist in IIO kein "Sonderobjekt", sondern ein Zusammenspiel aus mehreren Schichten:
| Was du anlegst | Kernmodell | Haupt-Layer | Warum |
|---|---|---|---|
| Kunde (öffentlich sichtbar) | Actor + Domain + Boundary(public) | Ontology, Boundary, Publishing | Sichtbarkeit und Kanaltrennung (DE/EN/AGT) sind zentral |
| Kunde (privat) | Actor + Domain + Boundary(internal/semi) | Boundary, Role, Transaction | Zugriff, Rollen und Audit-Trail müssen strict sein |
| Projekt | Story + Plan + Work + Artifact + State | Story, Composition, Transaction | Projekt ist ein operativer Flow, kein reines Label |
| Objekt allgemein | Artifact mit Owner/Relation/State | Placement, Transaction, Registry | Verortung + Nachweisbarkeit sind Pflicht |
Actor-agnostisch
fail-closed
Story-getrieben
TX-auditierbar
2. Objektbaum (aufgesplittet) für den Admin-Alltag
Damit der Baum nicht vermischt wird, trennst du immer in öffentlich, privat und projekthaft.
- Space: organisation/<name>
- customers/
- public/<customer-id>/
- private/<customer-id>/
- projects/
- active/<project-id>/
- archive/<project-id>/
- shared/
- templates/
- relations/
- customers/
# Minimal naming rules
customer-id: customer-<slug>
project-id: project-<slug>
visibility: public | private
state: draft | active | paused | archived
3. SOP: Neuen Kunden anlegen (öffentlich oder privat)
1. Intake: Kunden-ID, Sichtbarkeit, Owner, Domain, Zweck
2. Placement: Q1–Q9 prüfen (Ownership, Sensitivität, Legal-Impact)
3. Boundary setzen: public oder private mit Access-Regeln
4. Rollen binden: contributor/reviewer/owner für den Kundenkontext
5. Transaction schreiben: create_customer mit pre/post-state
6. Registry/Relation: node + domain + solution Links erfassen
Beispiel-Record
id: customer-acme
kind: customer
visibility: private
owner_actor: human-ops-01
domain: consulting
boundary_type: internal
state: active
relations:
- type: served_by
target: composition-delivery
- type: has_project
target: project-acme-rollout
private: Default für neue Kunden
public nur mit Review + Publishing-Check
4. SOP: Neues Projekt anlegen
Projektanlage folgt immer Story → Plan → Work → Artifact → State. Ohne Story kein Projektstart.
| Schritt | Pflichtfeld | BLOCK wenn fehlt |
|---|---|---|
| Story definieren | purpose, outcome, scope | Kein klarer Outcome |
| Plan festlegen | milestones, owner_role, due window | Kein Owner oder unrealistischer Plan |
| Work starten | assigned_actor, skill evidence | Keine Skill-Abdeckung |
| Artifacts erzeugen | docs/code/records mit Pfad | Unversionierte oder unplatzierte Artefakte |
| State wechseln | draft→active etc. als TX | State-Sprung ohne TX |
id: project-acme-rollout
kind: project
customer_ref: customer-acme
story_ref: story-acme-rollout-001
plan_ref: plan-acme-rollout-v1
state: active
visibility: private
5. Tagesroutine für Admin (Checkliste)
- Neue Objekte zuerst als private anlegen, erst später bewusst publizieren.
- Jede Kunden-/Projekt-Neuanlage mit Transaction-Record abschließen.
- Boundary-Änderungen nur mit benanntem Owner und Review-Gate.
- public/private nicht per Dateiname, sondern per Boundary + Visibility-Feld steuern.
- Archivierte Projekte in
projects/archive/verschieben, nicht löschen.
P-ROOT
P-BOUND
P-STORY
P-TXN
P-LANG
Merksatz: Jede Aktion am Objekt, die den State ändert, muss als Transaction vorliegen. Kein State-Sprung ohne TX — sonst ist der Audit-Trail gebrochen.
6. Theme- und UI-Check für den Betrieb
Für den Alltag muss das Manual unter mehreren Themes lesbar bleiben. Nutze diesen Quick-Test nach größeren Content-Änderungen:
1. Seite mit Theme-Switcher laden
2. Mindestens Core-Theme + ein alternatives Theme wählen
3. Überschriften, Tabellen, Code-Blöcke, Chips visuell prüfen
4. Mobil-Breite prüfen (kein horizontaler Inhaltsschnitt)
5. Ergebnis als kurze TX/Notiz dokumentieren
theme-switcher source: iio/theme/theme-switcher.js
families config: iio/theme/theme-families.json
manual shell: iio/theme/_shell.js
7. Quellen für dieses Kapitel
iio/base/agentic-organization/SPACE-KERNEL.mdiio/base/agentic-organization/PLACEMENT-RULES.mdiio/base/agentic-organization/NO-AI-OPS.mdiio/specs/governance/capability-profiles.yamliio/specs/governance/review-gate-enforcement.yamliio/theme/THEME-SWITCHER.md