System · das Relais, es steuert

Thalamus

Ein Ort, um das ganze System einzustellen.

Jeder Produktparameter (Modelle, Modi, Grounding, Stimme) einmal definiert, für jedes nutzende System aufgelöst und bei jeder Änderung protokolliert. Kein neues Deployment, um das Verhalten zu ändern.

In aktiver Entwicklung

Der Ablauf

Parameter
Modelle · Modi · Grounding · Stimme
Thalamus
Cortex · Lens · Larynx · Pharynx
  • Einmal definiert, pro System aufgelöst.
  • Jede Änderung protokolliert: wer, wann, alt → neu.
  • Nutzende Systeme sind fail-open: Sie arbeiten weiter, wenn Thalamus nicht erreichbar ist.

Im Zusammenspiel

Liefert Cortex, Lens, Larynx und Pharynx ihre Konfiguration im laufenden Betrieb.

Unter der Haube

Ein Schaltpult für das ganze System.

Jeder Produktparameter ist einmal in einer typisierten Registry definiert, wird für jedes nutzende System aufgelöst und bei jeder Änderung protokolliert. Die Definitionen kommen mit dem Code; die Werte liegen in einem kleinen Store.

So wird ein Wert aufgelöst

Override
ein Operator
›
Aktiver Modus
ein Bündel
›
Standardwert
aus der Registry
→
Aufgelöster Wert
je nutzendem System

Ein expliziter Override schlägt immer einen Modus, und der schlägt den Standardwert; die Oberfläche zeigt, welcher gewonnen hat, sodass die Rangfolge sichtbar ist, statt zu überraschen.

So lesen nutzende Systeme ihre Werte

Nutzendes System
cortex · lens · pharynx
GET /v1/config
If-None-Match: ETag
304 unverändert
günstige Abfrage
Werte + Version
bei Änderung

Nutzende Systeme fragen ihre eigenen Schlüssel mit einem ETag ab; eine unveränderte Version liefert ein günstiges 304. Jede Abfrage dient zugleich als Heartbeat, so weiß Thalamus, wer tatsächlich angebunden ist.

Einmal in einer typisierten Registry definiert. Jeder Regler kennt seine Grenzen, seine nutzenden Systeme und ob er sofort greift oder einen Neustart braucht.
Modi sind Bündel: Umschalten auf „demo“, „strict-enterprise“ oder „fast“, und das ganze System stellt sich auf einmal um.
Ehrliche Steuerung: Ein „geplanter“ Regler ist sichtbar, aber nicht einstellbar, damit er nicht nach Steuerung aussieht, ohne tatsächlich zu steuern.
Jede Änderung wird protokolliert (wer, wann, alt → neu); nutzende Systeme sind fail-open, die Steuerungsebene wird also nie zur Voraussetzung für die Verfügbarkeit.

Die übrigen Systeme

Dies ist ein Teil eines Systems, das für ein einziges Versprechen gebaut ist: Jede Antwort ist belegt und rechtebewusst, oder sie kommt gar nicht.