GNAI-010 v0.10: Wiederanlauf-/Profilwechselabnahme; Ausschluss-Befund korrigiert (10.7)

10.4-Tests bestanden: Idempotenz (changed=0), kontrollierter Neustart
erhaelt Profil/Modell, bewusster Stopp bleibt Stopp, Profilwechsel in beide
Richtungen ueber die Rolle fehlerfrei ohne erneuten Download.

Befundkorrektur 5.3: direkter systemctl start der zweiten Unit fuehrt KEINEN
geordneten Wechsel aus - beide Modelle laden in der UEbergangsphase parallel
(beobachtet 01.11.2026). Conflicts= sichert nur den Endzustand; Before= aus
den Quadlets entfernt. Der geordnete Stop-vor-Start-Wechsel ist
ausschliesslich die Rollen-Umschaltoperation. Host-Reboot-Test an den
Betreiber uebertragen.

Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
2026-11-01 17:32:17 +01:00
parent 1e1a6788a0
commit 2f03a7e624
2 changed files with 37 additions and 6 deletions
@@ -3,11 +3,14 @@ Description=LLM inference engine ({{ entry.profile_key }})
Wants={{ inference_engine_network_name }}-network.service
After={{ inference_engine_network_name }}-network.service
{% for other in entry.other_units %}
# Conflicts= only guarantees an exclusive END state. systemd runs the
# conflict stop of the other unit only after this unit finished starting,
# so a direct start of two engine units loads both models in parallel
# during the transition (observed 01.11.2026). The ordered
# stop-before-start switch is exclusively performed by the role's
# ai_environment_switch tasks (GNAI-010 section 5.3).
Conflicts={{ other }}
{% endfor %}
{% if entry.other_units | length == 1 %}
Before={{ entry.other_units | first }}
{% endif %}
[Container]
Image={{ inference_engine_image_ref }}