3.6 KiB
Tolaria — Data Model
Datum: 2026-08-24/25 · Autor: Red Queen · Modus: READ-ONLY
1. Speicherarchitektur
Tolaria verwendet kein klassisches DB-Schema (keine SQLite/Postgres-Tabellen für Wissen). Der Wissensbestand ist ein Git-basierter Markdown-Vault unter /app/vault/.
| Schicht | Ort | Zweck |
|---|---|---|
| Vault (Wissen) | /app/vault/ |
Git-versionierte .md-Dateien; Source of Knowledge |
| Cache | ~/.laputa/cache/<vault-hash>.json |
Vault-Index außerhalb des Vaults (ADR-0024) |
| App-Config/Settings | ~/.config/com.laputa.app/ |
App-Einstellungen (ADR-0004, ADR-0177) |
EVIDENCE: ADRs 0004, 0024, 0177; Vault-Liste
/api/vault/list. INFERENCE: Der Vault ist das primäre Speichermedium; App-Settings und Cache sind sekundär und nicht Teil des Wissens.
2. Dateiformat
- Markdown (
.md) - YAML-Frontmatter (optional, bei organisierten/typisierten Notizen):
type: <Typ> title: <Titel> tags: [tag1, tag2] created: YYYY-MM-DD _organized: true - Wikilinks
[[note-name]](Beziehungen, werden dynamisch erkannt) - System-Eigenschaften im Frontmatter mit
_-Präfix (z. B._organized,_icon)
3. Entity-/Typmodell (abgeleitet aus tatsächlichen Daten)
Im aktuellen Bestand vorgefundene type-Werte:
type |
Beispiel | Anmerkung |
|---|---|---|
Start |
notes/start.md |
Vault-Home |
Projekt |
notes/projects/projekte.md |
Projekt-Hub |
Bereich |
notes/trading/trading.md |
Themenbereich |
Agent |
notes/ai-agents/ai-agents.md |
Agent-Übersicht |
Referenz |
notes/reference/vps-infrastruktur.md |
Referenz/Infra |
Note |
notes/trading/second-brain/Phase10c_Slippage_Deterministic.md |
Allgemeine Notiz |
ADR |
docs/adr/*.md (App-intern) |
Architecture Decision Record |
Trading-Modul-System |
system-docs/README.md |
Organisierte Systemdoku |
INFERENCE: Das Typmodell ist dynamisch/frei —
typeist ein Freitext-Frontmatter-Feld, kein festes Enum. Die Hubs sind typisiert, die Root-Modul-Dokus sind nicht typisiert (kein Frontmatter). UNKNOWN: Ob weitere Typen im ADR-/Schema-Code fix definiert sind (nur aus Vault-Daten ableitbar, nicht aus dem Produktcode ohne Source-Read).
4. Beziehungen
[[wikilinks]]werden dynamisch als Relationships erkannt (ADR-0010 "Dynamic Links").- Frontmatter-Relationship-Felder (
belongsTo,relatedTo,isA) existieren im Entry-Endpunkt, sind aber im aktuellen Bestand nicht belegt (Module habenrelatedTo=[]). - Ist-Zustand: Nur Hub-Notizen (
start,trading,ai-agents) sind untereinander verlinkt. Die 19 Modul-Module sind untereinander komplett unvernetzt (keine Wikilinks).
5. Indizes / Constraints
- Kein explizites DB-Schema, keine SQL-Constraints.
- Git-Commit-Historie = impliziter Versions-/Änderungs-Index.
- Vault-Cache-Index (ADR-0024) für schnelle Listen/Suche.
- Frontmatter
_organized: truemarkiert organisierte/typisierte Dateien.
6. Source / Timestamps
- Erstell-/Freigabe-Daten stehen im Markdown-Body (z. B.
FREIGEGEBEN (20.08.2026)) oder Frontmatter (created:). - Root-Import-Zeitstempel: Dateien im Vault-Root tragen eine einheitliche Batch-Mtime (
2026-08-22 18:21) → Import-Zeitpunkt, nicht echter Inhalt. - Git-Historie des Repos
trading-system-docsliefert versionierte Wahrheit.
INFERENCE:
createdist Frontmatter-datiert;modifiedist über die einheitliche Root-Mtime nicht je Datei verlässlich. Aktualität ist am ehesten aus Body-Datumsangaben und Git-Historie ablesbar.