109 Commits
Author SHA1 Message Date
Robert Rapp 3b110d3d3f known-issues: Ontologie-Test unter Windows, auseinanderlaufende Branches
ci / test (push) Failing after 23s
2026-10-19 19:25:21 +02:00
Robert RappandClaude Opus 5.5 4a1bda3409 Merge main in plan/aufbau-2026-10-12: KNOW-Analyse, Ontologie, cpu_roles
ci / test (push) Failing after 22s
main (bis 13.10.) enthielt eine parallele Fassung von Task 0.4 (c81e372) sowie
KNOW-Befunde und die Ontologie. Konflikte zugunsten des Plan-Branches gelöst
(ausgerollter Stand); übernommen aus main: Ontologie (core/src/knaster/ontology,
ontology/, Tests, Router-Image), KNOW-Doku, cpu_roles im Placement samt
Kennzeichnung von pve61 und gode-pc-05/06 im Inventar und Test.
infra-stack kopiert jetzt auch ontology/ nach infra (Router-Build braucht es).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 19:23:22 +02:00
Robert RappandClaude Opus 5.5 c4ae5b2494 docs: Notfall-Übergabe der Verwaltung (für die Geschäftsführung)
ci / test (push) Failing after 23s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 19:14:55 +02:00
Robert RappandClaude Opus 5.5 50acfa6a95 Verwaltung durch Personen (Weg 1), AGENTS.md, project-map.md, known-issues.md
ci / test (push) Failing after 24s
Admin-Schlüssel je Person auf ops (Bastion) aus sites/knaster/proxmox.yaml
(access.ops_ssh_keys/_revoked), Playbook admins.yml, Test, Übergabe in
BETRIEB §15. Einstieg für Agenten und neue Admins: AGENTS.md, Projektkarte,
bekannte Probleme. Weg 2 (Verwaltung über NEX) als Entwurf in Phase 9.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 18:54:02 +02:00
Robert RappandClaude Opus 5.5 039f57a435 Plan 6.6: Namespace nex mit Pod Security, Sprachdienste nach nex-speech
ci / test (push) Failing after 25s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 18:00:57 +02:00
Robert RappandClaude Opus 5.5 f9036934c3 docs: llama.cpp in k3s (Task 6.1), Device Plugin nur M4000, VRAM-Befund
ci / test (push) Failing after 22s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 17:49:12 +02:00
Robert RappandClaude Opus 5.5 862825fa1e llama.cpp: Embedding mit -ub 4096 (ub 8192 braucht 5 GB Rechenpuffer auf der P2000)
ci / test (push) Failing after 22s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 17:44:15 +02:00
Robert RappandClaude Opus 5.5 986f1116fe k3s: llama.cpp-Server als Deployments (Task 6.1)
ci / test (push) Failing after 22s
Ein Pod je GPU-VM (Embed+Rerank bzw. Chat), Host-Netz mit den Ports aus dem
Compose, P2000 fest per UUID (NVIDIA_VISIBLE_DEVICES). Das Device Plugin
vergibt nur noch Index 0 (M4000). Rolle gpu-llamacpp: gemeinsame Vorbereitung
(prepare.yml), k3s.yml mit Image-Import und Compose-Stopp; gpu-llamacpp.yml
bricht ohne -e llamacpp_compose=true ab.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 17:27:23 +02:00
Robert RappandClaude Opus 5.5 24f4066aaf Plan 0.2: offene Reservierungen am 19.10. erneut angefragt
ci / test (push) Failing after 22s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 17:20:39 +02:00
Robert RappandClaude Opus 5.5 d875a9620e Plan 0.2: Laptop im Dock mit .181 bestätigt
ci / test (push) Failing after 22s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 17:12:58 +02:00
Robert RappandClaude Opus 5.5 a6d598be76 Plan 6.5: Prüfung Pod-Monitoring und Alert-Test eingetragen
ci / test (push) Failing after 21s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 17:10:57 +02:00
Robert RappandClaude Opus 5.5 09a4e44761 alerts: K3sPodCrashLooping über max_over_time (Alert flackerte zwischen Neustarts)
ci / test (push) Failing after 22s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 16:55:02 +02:00
Robert RappandClaude Opus 5.5 4ac251715e k3s: Pod-Monitoring in Grafana (Task 6.5)
ci / test (push) Failing after 23s
kube-state-metrics (NodePort 30808) und ServiceAccount prometheus-infra (nur
nodes/metrics) im Cluster; Prometheus auf infra liest kubelet/cAdvisor per TLS
gegen die k3s-CA. Ziele per file_sd aus kubectl get nodes, cAdvisor auf die
nötigen Reihen begrenzt. Dashboard "k3s – Pods" (Vorgabe nex), Alerts K3s*
nur mit notify. Playbook monitoring-k3s.yml.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-19 16:31:03 +02:00
Robert RappandClaude Fable 5.1 abf4a75063 Plan Phase 6.0: Agenten im Cluster (nex-admin mit k3s-Laufzeit)
ci / test (push) Failing after 24s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-19 15:09:55 +02:00
Robert RappandClaude Fable 5.1 287a4a2c73 Brücke nex-know: Host-Port 14200 auf appsrv08
ci / test (push) Failing after 22s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-19 14:46:04 +02:00
Robert RappandClaude Fable 5.1 39cd150230 Brücke nex: EndpointSlice statt Endpoints, DNS-Prüfung mit getent
ci / test (push) Failing after 21s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-19 13:45:57 +02:00
Robert RappandClaude Fable 5.1 31f6435c2f Namespace nex: Brücke zu appsrv08, Zugang für nex-admin, Pull-Secret
ci / test (push) Failing after 22s
Vorbereitung für Agenten im Cluster (nex-Spec 2026-10-19, D259/D263/D265):
Services ohne Selector auf die Host-Ports von appsrv08, ServiceAccount mit
Role nur für den Namespace nex, Pull-Secret aus einer Datei auf ops.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-19 13:45:18 +02:00
Robert RappandClaude Fable 5.1 02adb2f4b2 docs: Portainer CE im Cluster, Übernahme der Datenbank, offene Admin-Schritte
ci / test (push) Failing after 25s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 18:48:49 +02:00
Robert RappandClaude Fable 5.1 d27385e3e1 portainer-k3s: Prüfung über /api/system/status (ohne Anmeldung)
ci / test (push) Failing after 23s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 18:47:52 +02:00
Robert RappandClaude Fable 5.1 4d31dda0e5 k3s: Portainer CE mit übernommener Datenbank von appsrv08 (Manifest + Playbook mit Rollback BE→CE)
ci / test (push) Failing after 24s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 18:45:37 +02:00
Robert RappandClaude Fable 5.1 26e1079f3d docs: Zuteilung der GPU-VMs (8 vCPU / 20 GB), ARC 2 GB, Vorgehen bei Änderung
ci / test (push) Successful in 29s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 17:30:25 +02:00
Robert RappandClaude Fable 5.1 2a8badd610 GPU-VMs 8 vCPU / 20 GB, infra 4 GB, ZFS-ARC 2 GB (Rolle pve-host), kein Auto-Reboot durch tofu
ci / test (push) Successful in 29s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 17:26:00 +02:00
Robert RappandClaude Fable 5.1 4cd3fb87ed docs: RustDesk in k3s (BETRIEB §14, README, Plan), SearXNG-Cutover Weg 2
ci / test (push) Successful in 28s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 14:47:58 +02:00
Robert RappandClaude Fable 5.1 8b1f2a7e95 rustdesk: Schlüsselprüfung über das Secret statt exec
ci / test (push) Successful in 29s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 14:47:15 +02:00
Robert RappandClaude Fable 5.1 b930d658ed rustdesk: Image ohne Shell – Relay-Adresse per $(RELAY_HOST), Prüfung über Secret
ci / test (push) Successful in 28s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 14:46:26 +02:00
Robert RappandClaude Fable 5.1 d11e2d90fc k3s: RustDesk-Server (hbbs/hbbr) als Manifest und Playbook, parallel zu appsrv08
ci / test (push) Successful in 26s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 14:41:00 +02:00
Robert RappandClaude Fable 5.1 eafebaab94 docs: SearXNG-Umzug in BETRIEB §14 und Plan
ci / test (push) Successful in 27s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 12:37:15 +02:00
Robert RappandClaude Fable 5.1 7d1bdf70e0 k3s: NEX-Websuche (SearXNG) als Umzugstest von appsrv08, NodePort 30880
ci / test (push) Successful in 28s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 12:36:28 +02:00
Robert RappandClaude Fable 5.1 9c4e3f1a2f docs: k3s/Portainer (D6) in BETRIEB §14 und Plan; nex-speech.yml abgesichert; k3s-VM DHCP-Client-ID=MAC
ci / test (push) Successful in 28s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 12:03:56 +02:00
Robert RappandClaude Fable 5.1 dc4edb643f k3s: Konfigurationsverzeichnis anlegen
ci / test (push) Successful in 27s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 11:58:59 +02:00
Robert RappandClaude Fable 5.1 d9537cbb42 k3s-server: kubectl-Version ohne Regex ableiten (YAML-Escape)
ci / test (push) Successful in 26s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 11:58:41 +02:00
Robert RappandClaude Fable 5.1 3a8e9f3357 refresh-vm-access: Dienst-VMs mit aufnehmen (Lesefehler behoben)
ci / test (push) Failing after 23s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 11:57:57 +02:00
Robert RappandClaude Fable 5.1 2c1d43e9c7 k3s (D6): Dienst-VM k3s per tofu, Rollen k3s-server/k3s-agent/k3s-apps, Manifeste, NEX-Sprachdienste als k3s-Umzugstest
ci / test (push) Failing after 22s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-15 11:55:18 +02:00
Robert RappandClaude Fable 5.1 6cccc01d14 docs: ops und infra mit festen Adressen, DHCP-Reservierungsliste und VLAN-Ausblick im Plan
ci / test (push) Successful in 29s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-14 19:11:52 +02:00
Robert RappandClaude Fable 5.1 96cc1ab9c6 infra: feste Adresse 192.168.100.188 statt DHCP, DNS im LXC gesetzt
ci / test (push) Successful in 32s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-14 19:10:06 +02:00
Robert RappandClaude Fable 5.1 414d020e9d docs: zweite Laptop-Adresse (.181, Dock) in Firewall- und Anmeldedoku
ci / test (push) Successful in 32s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-14 19:01:40 +02:00
Robert RappandClaude Fable 5.1 72b0cd852a firewall: Admin-Laptop auch über USB-LAN im Dock (.181) zulassen
ci / test (push) Successful in 30s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-14 19:00:53 +02:00
Robert RappandClaude Fable 5.1 d278cb38bb docs: Anmeldung und Vertretung (ANMELDUNG.md), Password Depot als Quelle für TOTP, Bitwarden-Hinweis
ci / test (push) Successful in 30s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-13 18:06:55 +02:00
Robert RappandClaude Fable 5.1 97bbb58433 docs: Betriebshandbuch §8–§13 (Zugang, Benachrichtigungen, Firewall, Zertifikat, Netzwerk, Testvorgehen), healthcheck.sh, Plan Phase 4 erledigt
ci / test (push) Successful in 27s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-13 17:12:51 +02:00
Robert RappandClaude Fable 5.1 47ad1580ff pve-cluster: Verwaltungsports nur aus IPSET admin (Proxmox ergänzt management stets um das /24); Skript nutzt python auf dem Laptop
ci / test (push) Successful in 25s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-13 17:08:42 +02:00
Robert Rapp 87b678e7a8 pve-cluster: cluster.fw ohne mode (pmxcfs erlaubt kein chmod)
ci / test (push) Successful in 26s
2026-10-13 17:06:40 +02:00
Robert Rapp f3cfacfe48 pve-cluster: Token-Abfrage verträgt fehlenden Benutzer (Probelauf)
ci / test (push) Successful in 27s
2026-10-13 17:06:05 +02:00
Robert Rapp d9b2539dea pve-cluster: when-Listen in Anführungszeichen (YAML-Flow-Sequenz)
ci / test (push) Successful in 26s
2026-10-13 17:05:43 +02:00
Robert RappandClaude Fable 5.1 81602373fc pve-cluster: Phase 4 als Rolle – Admin-Gruppe/-Konten, Healer-Token, Benachrichtigungen, Firewall mit IPSET management (Tasks 4.1–4.4)
ci / test (push) Failing after 21s
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-13 17:05:30 +02:00
rorappandClaude Opus 5.5 9442cc49d1 ontology: Ontologie als Quelle im Repo, Abgleich mit n8n/KNOW in der Service-Routine
ci / test (push) Successful in 27s
- ontology/know.yaml: 49 Klassen, 66 Beziehungen, 12 Vokabulare (72 Konzepte);
  erzeugt: know.ttl (OWL + SKOS), Ansicht aus viewer.html.tmpl
- knaster.ontology: Modell + Prüfung, Export, Momentaufnahme der n8n-Workflows
  (nur GET; KNOW-Spezifikation aus dem Workflow-Code, Aufrufe inkl. Laufzeit-
  Operationen, direktes SQL), Abgleich, Übernahme von Entscheidungen
- Service-Routine Schritt 8: Verstöße als Befunde, Ontologie-Änderungen als
  Vorschläge ontology_change (immer Freigabe); „ordne P-x <konzept> zu“;
  Entscheidungen in ontology_decisions, `knaster ontology apply` schreibt sie
  in die YAML (Version +1)
- CLI: knaster ontology validate|export|snapshot|check|apply; knaster validate
  prüft Modell und Aktualität der Turtle-Datei
- Gegen echten n8n-Export geprüft: neue Befunde B31–B33 (verified/confirmed,
  KAN ruft unbekannte Operation, MPA ordnet Projektereignisse nie ein)
- SPEC-ontology, BETRIEB §6, Router-Image enthält die Ontologie

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 02:54:49 +02:00
rorappandClaude Opus 5.5 525b29aa6d docs: Vollanalyse der KNOW-Datenhaltung, Befunde B11–B30
ci / test (push) Successful in 28s
Vier Ebenen (Schema, SQL der 80 Operationen, Payloads der Aufrufer,
Ablagen außerhalb von KNOW), jeder Befund am Code nachgeprüft:
keine Fremdschlüssel, zwei Kontakt-Schlüsselschemata, zwei Projekt-Kennungen,
zu enge/fehlende Eindeutigkeit, Upserts frieren Fachdaten ein, veraltende
abgeleitete Werte, nie geschriebene Felder, Kategorie-Vokabulare (Safety-Floor
über CAT unerreichbar), uneinheitliche Normalisierung, Schema-Drift,
gemeinsamer DB-Zugang, staticData, unverschlüsselte Browser-Sessions,
LLM-Aufrufe am PSE-LiteLLM vorbei. Schema-Referenz und Ontologie um
fehlende Spalten ergänzt.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 02:34:42 +02:00
rorappandClaude Opus 5.5 d9d8d4e38b docs: KNOW-Befund B10 (Absender-Report liest eingefrorene Statistik aus contacts)
ci / test (push) Successful in 25s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 02:21:07 +02:00
rorappandClaude Opus 5.5 d0f1d31918 docs: KNOW-Befunde B1–B9 festgehalten, Ontologie als OWL/Turtle
ci / test (push) Successful in 26s
- KNOW-befunde.md: Aufrufe unbekannter Operationen (CANCEL, KAN-Learn, IN-Sync),
  direktes SQL in CAT, 12 Tabellen ohne aktiven Schreibweg mit Ursache (keine
  Operation / kein Aufrufer / Seed), DDL im KAF-Bestätigungspfad, Lösch-Operation
  über KGW, fehlende Löschfristen; jeweils Beleg, Folge, Vorschlag
- know-ontology.ttl: 49 Klassen, 66 Beziehungen, 39 Individuen (rdflib-geprüft)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 02:15:48 +02:00
rorappandClaude Opus 5.5 fdaa5a5694 docs: Referenz der n8n-Wissensdatenbank KNOW/KGW (Tabellen, Zugriffe, Auffälligkeiten)
ci / test (push) Successful in 25s
Aus den Workflow-Definitionen abgeleitet (n8n-API, nur lesend, keine DB-Inhalte):
33 Tabellen im Schema knowledge, welche Workflows über welche Operation schreiben
und lesen, KGW-Freigaben, Aufrufe unbekannter Operationen (CANCEL, KAN-Learn,
IN-Sync) und Bezug zu Task 6.4 (find_active_llm_workers über KGW).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 02:05:10 +02:00
rorappandClaude Opus 5.5 c81e372c49 sites: Inventar und Zielbild an echte Knoten (pve44–pve61) angepasst; ADR-0001/0002/0006 ergänzt
ci / test (push) Successful in 25s
Aufbauplan Task 0.4:
- inventory.yaml: pve44/46/48/52/61 und GODE-PC-05/06 (Ada, Windows, cpu_roles: false)
- proxmox.yaml: eine GPU-VM pro Knoten mit allen Karten (D2), local-lvm/tank (D1 B),
  192.168.100.0/24 ohne VLAN, Gast-IPs .220–.239 (ANNAHME bis Task 0.2)
- registry.yaml/prometheus.yml: ops-Labels auf gpu-pve44/46/48, Ada ohne pve_node/vmid
- tofu: dynamische hostpci, Speicher je Gast; Ansible: pve_gpu_hosts/pve_kiosk,
  Replikation auf mehrere Ziele
- Placement: cpu_roles=false schließt Arbeitsplätze/Kiosk von CPU-Rollen aus
- PLAN §1.3/§1.4/§9 und ADR-Nachträge (D1 entschieden, D2/D3 Bestätigung offen)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 01:39:49 +02:00