Skip to content

0.9.7 — Zwischenrelease: PostgreSQL-Metadaten, Frontend-Umbau, Release-Ratchets

Choose a tag to compare

@arn0ld87 arn0ld87 released this 12 Oct 23:11
· 49 commits to main since this release
ab54586

Warning

Zu diesem Tag gibt es keine GHCR-Images und keine Release-Assets (SHA256SUMS, Image-Digests, SBOMs). Der Tag-Lauf von docker-image.yml ist im Prod-Proxy-Smoke an einem CI-Fehler gescheitert (Run 38320813298, Fix in #1873), deshalb wurde nichts veröffentlicht. Das Image selbst ist nicht betroffen. Images und Assets kommen mit v0.9.8.

Version: 0.9.7 · Datum: 13.10.2026 · Linie: 0.9.x Stability Beta, Zwischenrelease vor 0.10.0-rc.1
Basis: main@d8ed7370 · Vorgänger: v0.9.6 (20.09.2026) · Umfang: 229 Commits, 215 Changelog-Fragmente

0.9.7 ist kein 0.10.0 und kein Release Candidate. Es beansprucht keines der 0.10-/1.0-Gates aus ROADMAP.md. Die vollständige Liste der Änderungen steht in CHANGELOG.md.

TL;DR

  • Nutzer: neue Oberfläche mit Seitenleiste, Bibliotheken (Läufe, Graphen, Personasätze) und einem Lauf-Arbeitsbereich. Personas lassen sich vor der Simulation prüfen, ändern und verwerfen. Der Feed kennzeichnet synthetische Beiträge sichtbar mit SIM.
  • Betrieb: Bei reinem Dateibetrieb ist kein Pflichtschritt nötig. Wer PostgreSQL-Metadaten nutzt, führt vor dem Start alembic upgrade head aus. Mehrere Simulations-Defaults ändern das Laufverhalten ohne Zutun.
  • Grenzen: Das Supabase-Image-Gate (#1670) ist rot. Ops-, Cutover-, Eval- und Baseline-Nachweise für 0.10/1.0 fehlen.

Highlights

PostgreSQL-Metadaten

  • Repository-Ports mit Datei- und Postgres-Adapter für Simulationen (#1578, #1585), Runs (#1579, #1587), Berichte (#1580, #1588) und Workspaces (#1612).
  • Acht neue Alembic-Revisionen, einziger Head 3b7f9d21a8c4 (persona_sets).
  • Startabbruch bei Alembic-Drift (#1582) sowie ein Migrations- und Rollback-Gate über alle fünf Metadaten-Domänen (#1589).
  • Readiness und Backup decken PostgreSQL ab (#1581, #1583).
  • Auf armserver laufen die Metadaten seit dem 25.09.2026 produktiv auf PostgreSQL (#1592). Die Code-Defaults bleiben beim Dateipfad.

Oberfläche

  • Der Frontend-Umbau (#1790) hat alle acht Etappen auf main: eine Hülle mit Seitenleiste, Bibliotheken, ein Lauf-Arbeitsbereich mit Graph, Personas, Simulation, Bericht und Interviews, Personasätze (#1811) und das Bearbeiten von Graphen (#1812).
  • Graph-Export als GraphML, SVG, PNG, PDF und HTML.

Simulation und Personas

  • Ein belegtes Aktivitätsmodell (AGORA_SIM_ACTIVITY_MODE, #1779), Twitter-Kommentare und verschachtelte Reddit-Kommentare.
  • Ein begrenzter Agenten-Speicher und ein Feed-Kommentardeckel (#1772).
  • Die Persona-Auswahl folgt der Streitfrage. Quellenidentität und Rolle sind vor zufälliger Demografie geschützt (#1833).
  • Ein Role-Leakage-Audit mit Markierung (#1323). Alias-Auflösung und Chunk-Kontext für die NER (#1470).

Bericht und Evidence

  • Claim-Typen (#1400) und aggregierte Belege für Quantoren (#1345).
  • Belegdichte je Bericht und eine Positionierungsquote als Warnung (#1778).
  • Die Ausfallquote der Simulationsaufrufe erscheint als Degradation.
  • Szenario- und Erwartungstext stützen keinen Claim mehr (#1240, Teilschritt).

Release-Disziplin und Sicherheit

  • schema_version für Dateiverträge (#1663), eine Kompatibilitäts- und Deprecation-Policy (#1664) und Release-Checksummen (#1661).
  • Coverage-Ratchets für Backend und Frontend (#1671, #1672) und Test-Isolation vom echten Datenbestand (#1632).
  • GHCR-Images für jeden grünen main-Push (#1708).
  • OASIS-Observations und Tool-Ergebnisse sind im Single-Platform-Pfad als untrusted Data gekapselt (#1224). Der ZIP-Export arbeitet mit einer Allowlist.

Migration und Upgrade

Siehe runbooks/upgrade.md. Kurz:

  1. Backup.
  2. Ziel-Stand einspielen. Bei reinem Dateibetrieb ist danach nichts weiter nötig.
  3. Wenn ein AGORA_*_BACKEND auf postgres steht: alembic upgrade head vor dem Start.
  4. Linux-Hosts: das HuggingFace-Cache-Verzeichnis einmalig räumen oder umschreiben.
  5. Neue Simulations-Defaults prüfen. Die Rückweg-Werte stehen im Runbook.

Verifikation

CI-Abgleich auf main@d8ed7370 (Basis des Release-Commits) vom 13.10.2026:

  • Grün:
    • Backend: Tests und Lint (3.14), Pydantic-Contract-Tests, Integration tests (Neo4j, Redis, PostgreSQL).
    • Frontend: Build und Lint.
    • Vertrags- und Versionsprüfungen: Schema-Drift, Zod-Spiegel, Version-Drift, Evidence-Quality-Gate, Voice-Lint, Komplexitäts-Gate.
    • Sicherheit: Security scans, pip-audit, CodeQL (Python, JS/TS, Actions).
    • Playwright-Smokes (Health, Upload+Graph, Graph-Build-Navigation, Run-Budget, Report-Modes, Minimalreport, AiModelPicker, Accessibility).
    • Docker: Image-Build und GHCR-Publish.
  • Rot: „Supabase image CVEs + exception gate“ (#1670).
  • Ausstehend: die CI des Release-PRs und des Tag-Commits. Die Release-Checksummen werden nach dem Tag nach runbooks/release-artefakte-pruefen.md geprüft.

Der Release-Commit ändert nur Dokumentation, Medien und Versionsangaben, keinen Laufzeitcode.

Bekannte Grenzen

  • #1670: Das Gate für die Supabase-Image-Scans ist rot. 399 High-Befunde sind seit #1866 befristet als Ausnahme eingetragen. Die übrigen Befunde haben noch keine gültige Ausnahme. Das betrifft nur den optionalen Supabase-Stack.
  • #1592, #766: Der formale Cutover-Abschluss fehlt, ebenso die Nachweise für Fresh Install, Backup/Restore/Upgrade und Release-Artefakte.
  • #1240, #1662: Der Eval-Gegenlauf und der Baseline-Vergleich gegen Single-Prompt und statische Personas fehlen.
  • #1790: Der operative Rest des Frontend-Umbaus ist offen: Docker-e2e und die Verifikation gegen eine echte Neo4j.
  • #1224: Prompt-Injection-Härtung gibt es nur im Single-Platform-Pfad. Der parallele Pfad und die CAMEL-LLMAction()-Fallbacks sind nicht gehärtet.
  • Weitere Grenzen:
    • Die Simulation kann nicht fortgesetzt werden, und Out-of-Process-Worker fehlen.
    • Gunicorn bleibt bei genau einem Web-Worker.
    • Replay garantiert keine identischen Modellausgaben. random_seed bleibt bewusst null.
  • Agora sagt kein menschliches Verhalten vorher. Personas und Simulationen sind synthetische Modellausgaben.

Rollback

Den Image-Tag v0.9.6 setzen. Bei Dateibetrieb genügt das. Bei PostgreSQL-Betrieb zuerst alembic downgrade 7a3c1e84f209 (Head von v0.9.6) ausführen, sonst bricht der alte Stand am Head-Startup-Gate ab. Details stehen in runbooks/upgrade.md und runbooks/metadata-postgres-cutover.md.