Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 18 additions & 6 deletions docs/PLAN.md
Original file line number Diff line number Diff line change
Expand Up @@ -98,10 +98,22 @@ Größenausnahme. **D2** keine interne Agenten-ID im öffentlichen Code oder in
| DR-15a-BASE | Z1: exakt geprüftes Startmodul `5f501f1` erhalten; lexikalische Prüfung ohne Dateisystemauflösung | vorhandener Implementierer · Codex | DR-01; gemeinsame Abnahme mit DR-15a-CLI | Server | A | Erledigt: #647 `5f501f1` durch Mergify am 08.10. 07:26:49 UTC gemergt (`cd3bffa`); Lieferung zusammen mit CLI, DR-15b offen | unveränderter Head `5f501f1`, alter eigener prepush 22/188s Exit 0 und Reviewbelege erhalten; Draft auf #635; Lieferung erst mit CLI-Korrektur erfüllt | 868dbc83 |
| DR-15a-CLI | Z1: vorhandenen Alias-Entry-Fix getrennt abnehmen; bestehende Commits erhalten, keine Wiederholung | derselbe Implementierer · Codex | DR-15a-BASE | Server | A | Erledigt: #639 `3bf5a8b` durch Mergify am 08.10. 08:09:55 UTC gemergt (`7ac5985`); kombinierte Source-Abnahme erhalten, DR-15b offen | #639 auf Baseline retargetet, gleicher Head; Symlink/Junction und Node-24.0-Einstieg benannt rot→grün; eigener prepush am neuen Head Exit 0; Node >= 24 erhalten; zwei Vendoren außerhalb OpenAI am neuen Delta und Root-Abnahme | f1a2ade9 |
| DR-15b | Startintegration nach Server; bestehendes Startmodul/Entry aus 15a, konkreten Dateischnitt vor Dispatch pinnen | Chief weist einen Codex-Owner zu | DR-06a und integrierte DR-15a-BASE/CLI | eigener Worktree | A | In Prüfung: Draft #750 | loadStartConfig bei fehlender ROOT_AGENT_ID an 06a angleichen: Start verweigern statt nur Benachrichtigungen abschalten; physischer externer STATE-Pfad/H2 und Secret-Manager-Vertrag erhalten; Rot, eigene prepush/zwei Fremdreviews | a463151a |
| DR-SEC-01a | Erster begrenzter Schnitt zum Denkraum-Sicherheitsbefund; Quelle Root-Disposition 09.10. | Root bindet einen Owner im Ticket | Dateischnitt und Startvertrag aus Ticket b0221f4a vor Umsetzung | Server | A | Geplant; kein Ausführungs-/Mergebeleg aus dieser PLAN-Pflege | Ticketbefunde mit Quellen disponieren; für Code Rot→Grün, eigene prepush und zwei Fremdvendor-Reviews; muss vor DR-16a landen | b0221f4a |
| DR-SEC-01a | Erster begrenzter Schnitt zum Denkraum-Sicherheitsbefund; Quelle Root-Disposition 09.10. | Root bindet einen Owner im Ticket | Dateischnitt und Startvertrag aus Ticket b0221f4a vor Umsetzung | Server | A | Erledigt als Bericht: Bedrohungsmodell + Testlückenkarte (Server-Job srv-dr-sec-01a 09.10. 02:30Z, Bericht `~/pa-orch/reports/dr-sec-01a-a1d9a5fba38d.md`); Folgeschnitte 01b–01i | Ticketbefunde mit Quellen disponieren; für Code Rot→Grün, eigene prepush und zwei Fremdvendor-Reviews; muss vor DR-16a landen | b0221f4a |
| DR-SEC-01b | Zweiter begrenzter Schnitt zum Denkraum-Sicherheitsbefund; Quelle Root-Disposition 09.10. | Root bindet einen Owner im Ticket | Abgrenzung zu DR-SEC-01a im Ticket vor Umsetzung | Server | A | Erledigt #793 (gemergt 2026-10-09T01:38:35Z) | konkrete Abnahme im Ticket b0221f4a erhalten; für Code Rot→Grün, eigene prepush und zwei Fremdvendor-Reviews; muss vor DR-16a landen | b0221f4a |
| DR-16a | Umschalt-Helfer + Drill-Tests; nur tools/denkraum/switch.mjs + switch.test.mjs, kein Restore | Root benennt einen vorhandenen Serverowner | DR-SEC-01a/b gemergt; DR-07 einschließlich 07c/d/e1/e2 (#752/#753/#751/#755), DR-14, DR-15 einschließlich 15b/#750 und UI-Verdrahtung #718 gemergt | Server | A, zwei Fremdanbieter | Geplant; kein Start aus PLAN-Pflege | ≤ 300 ALL; benannte DR16:-Tests rot→grün, node --test --test-name-pattern='^DR16:', npm run test:denkraum, eigene volle prepush, zwei Fremdvendor-Reviews am SHA/Disposition, Root-Abnahme | b0e90b72 |
| DR-16b | Live-Drill auf dem PC: Schreibpause, Sicherung, Umschalten, metadatensicherer Rückweg | Stabschef Ausführung, ein Owner | DR-16a gemergt sowie alle dessen Vorgänger; Root-Livefreigabe für exakten SHA und Zeitfenster | PC | A plus unabhängiges Nachlesen | Blockiert bis G0; keine Livefreigabe durch Dokumentannahme | Gates G0–G7 im gebundenen Vertragsentwurf Ticket b0e90b72; G5 beide UI-Skripte HTTP 200; protokollierter Drill und unabhängige Prüfung; P1/aktuelles Ledger nach Writes erhalten, Root-Abnahme | b0e90b72 |
| DR-SEC-01c | Body-Limits und ungültiges UTF-8 absichern | Root bindet einen Owner im Ticket | DR-SEC-01b | Server | A | Erledigt #808 (gemergt 2026-10-09T03:36:26Z) | Rot→Grün, eigene prepush, zwei Fremdvendor-Reviews; vor DR-16a | b0221f4a |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Aktualisiere den PLAN-Kopf für diesen Sync

Mit diesen neuen Merge-Belegen reicht der Inhalt bis mindestens 03:36 UTC und der Kandidatenbericht bezeichnet die Änderung als PLAN-SYNC-0910e auf Basis 41a11e8, während der Dokumentkopf weiterhin 00:59 UTC, PLAN-SYNC-0910b und Basis 03542ef ausweist. Leser können dadurch weder den Stand noch die Quellenbasis des einzigen kanonischen Plans bestimmen; aktualisiere Zeit, Sync-ID, Basis und Quellenzeile zusammen mit den Statuszeilen.

AGENTS.md reference: AGENTS.md:L53-L59

Useful? React with 👍 / 👎.

| DR-SEC-01d | Restliche P3/P6-Startkontrollen und EPERM-Guards | Root bindet einen Owner im Ticket | DR-SEC-01c | Server | A | Erledigt #823 (gemergt 2026-10-09T04:39:42Z) | Rot→Grün, eigene prepush, zwei Fremdvendor-Reviews; vor DR-16a | b0221f4a |
| DR-SEC-01e | Pfad- und Rechtekontrollen absichern | Root bindet einen Owner im Ticket | DR-SEC-01b | Server | A | Erledigt #796 (gemergt 2026-10-09T01:45:37Z) | Rot→Grün, eigene prepush, zwei Fremdvendor-Reviews; vor DR-16a | b0221f4a |
| DR-SEC-01f | Untrusted Failure-Inhalte aus CLI-Ausgabe halten | Root bindet einen Owner im Ticket | DR-SEC-01e | Server | A | Erledigt #806 (gemergt 2026-10-09T02:48:29Z) | Rot→Grün, eigene prepush, zwei Fremdvendor-Reviews; vor DR-16a | b0221f4a |
| DR-SEC-01g-G1 | Ownership-Primitive für das Denkraum-Ledger (Option A) | Root bindet einen Owner im Ticket | DR-SEC-01a Bericht; Design dr-sec-01g-design-49fd851ecbb6 | Server | A | In Prüfung: Open #811 (Mergify-Queue; review-ok; gates linux IN_PROGRESS) | Prozess-Konkurrenten und fehlgeschlagenes Takeover rot→grün; eigene prepush, zwei Fremdvendor-Reviews | b0221f4a |

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Markiere G1 als gemergt

Beim geprüften Kandidaten ist diese Zeile bereits veraltet: Merge-Commit b19d1bb für #811 datiert auf 13:37:16 UTC, der geprüfte Commit auf 13:46:53 UTC und seine eigene Root-Abnahme bestätigt den Merge. Solange der kanonische Plan G1 trotzdem als offene Queue-Arbeit führt, können Koordinatoren den davon abhängigen G2-Start unnötig zurückhalten; übernimm hier den beobachteten Merge-Status.

AGENTS.md reference: AGENTS.md:L57-L59

Useful? React with 👍 / 👎.

| DR-SEC-01g-G2 | Core-Enforcement hinter Ownership | Root bindet einen Owner im Ticket | DR-SEC-01g-G1 | Server | A | Geplant; Quelle Design-Bericht dr-sec-01g-design-49fd851ecbb6 (Tabelle Z.115–119), seriell nach G1 | P9 Rot→Grün; Mutationen/Migration geschützt; Notification-Lücke bleibt explizit | b0221f4a |
| DR-SEC-01g-G3 | Notification-Ownership | Root bindet einen Owner im Ticket | DR-SEC-01g-G2 | Server | A | Geplant; Quelle Design-Bericht dr-sec-01g-design-49fd851ecbb6 (Tabelle Z.115–119), seriell nach G1 | zweiter Prozess kann nicht senden; Flush serialisiert; bestehende Receipt-/Retry-Tests erhalten | b0221f4a |
| DR-SEC-01g-G4 | Server-Lifecycle / Admission | Root bindet einen Owner im Ticket | DR-SEC-01g-G3 | Server | A | Geplant; Quelle Design-Bericht dr-sec-01g-design-49fd851ecbb6 (Tabelle Z.115–119), seriell nach G1 | zweiter Listener mutiert/sendet nicht; Drain vor Release; Interface für DR-16a | b0221f4a |
| DR-SEC-01g-G5 | DR-16-Adapter (G4-Lifecycle nutzen) | DR-16a-Owner | DR-SEC-01g-G4 | Server | A | in DR-16a gefaltet | Root-Disposition 09.10.: kein eigener Schnitt; Abnahme über DR-16a | b0221f4a |
| DR-SEC-01g-G6 | Recovery-/Portability-Abnahme | Root bindet einen Owner im Ticket | DR-SEC-01g-G4 | Server | A | nach G4 | beobachteter Exit/Alias; Windows-Beleg; fehlender Heartbeat ≠ Exit | b0221f4a |
Comment on lines +111 to +112

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Verwende gültige Statuswerte für G5 und G6

Bei jeder Auswertung durch parseGoals() werden diese beiden neuen Statuszellen als invalid klassifiziert, weil goalStatus() nur die acht dokumentierten Werte beziehungsweise drei Aliase am Zellanfang akzeptiert. Dadurch fehlen G5 und G6 in den regulären DevHQ-Statuszählungen; stelle den Erläuterungen daher jeweils einen passenden offiziellen Status wie Entfallen oder Geplant voran. Das ist besonders relevant, weil docs/PLAN.md der kanonische Plan ist.

AGENTS.md reference: AGENTS.md:L53-L55

Useful? React with 👍 / 👎.

| DR-SEC-01h | P11/P12 UI- und Header-Tests | Root bindet einen Owner im Ticket | DR-11/#718 | Server | B | Geplant; nach #718 | UI-/Header-Kontrollen nach Harness-Port; eigene prepush | b0221f4a |
| DR-SEC-01i | Webhook-Fehler sanitizen und Security-Controls abdecken | Root bindet einen Owner im Ticket | DR-SEC-01f | Server | A | Erledigt #824 (gemergt 2026-10-09T04:51:19Z) | Rot→Grün, eigene prepush, zwei Fremdvendor-Reviews; vor DR-16a | b0221f4a |
| DR-16a | Umschalt-Helfer + Drill-Tests; nur tools/denkraum/switch.mjs + switch.test.mjs, kein Restore | Root benennt einen vorhandenen Serverowner | DR-SEC-01a/b gemergt; DR-SEC-01g G4 und 01h gemergt; DR-07 einschließlich 07c/d/e1/e2 (#752/#753/#751/#755), DR-14, DR-15 einschließlich 15b/#750 und UI-Verdrahtung #718 gemergt | Server | A, zwei Fremdanbieter | Geplant; kein Start aus PLAN-Pflege | ≤ 300 ALL; benannte DR16:-Tests rot→grün, node --test --test-name-pattern='^DR16:', npm run test:denkraum, eigene volle prepush, zwei Fremdvendor-Reviews am SHA/Disposition, Root-Abnahme | b0e90b72 |
| DR-16b | Live-Drill auf dem PC: Schreibpause, Sicherung, Umschalten, metadatensicherer Rückweg | Stabschef Ausführung, ein Owner | DR-16a gemergt sowie alle dessen Vorgänger; G6; Root-Livefreigabe für exakten SHA und Zeitfenster | PC | A plus unabhängiges Nachlesen | Blockiert bis G0; keine Livefreigabe durch Dokumentannahme | Gates G0–G7 im gebundenen Vertragsentwurf Ticket b0e90b72; G5 beide UI-Skripte HTTP 200; protokollierter Drill und unabhängige Prüfung; P1/aktuelles Ledger nach Writes erhalten, Root-Abnahme | b0e90b72 |
Comment on lines +115 to +116

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Schreibe die neuen Abhängigkeiten mit vollständigen Paket-IDs

Wenn DevHQ den Plan mit parseGoals() einliest, erkennt es Abhängigkeiten nur anhand exakter bekannter IDs. Die neuen Schreibweisen DR-SEC-01g G4, 01h und G6 werden deshalb nicht als DR-SEC-01g-G4, DR-SEC-01h beziehungsweise DR-SEC-01g-G6 erfasst; der veröffentlichte Abhängigkeitsgraph lässt diese neuen Release-Vorgänger aus. Verwende hier die vollständigen IDs, damit Plan- und HQ-Verbraucher den kritischen Pfad korrekt sehen.

AGENTS.md reference: AGENTS.md:L53-L55

Useful? React with 👍 / 👎.

| DR-17 | Öffentliche README, Anleitung in 5 Schritten, CHANGELOG-Abschnitt Denkraum | Technischer Autor | DR-17a-Entwurf laut Root 09.10. vorgezogen; Trockenlauf nach DR-16a-Merge und Root-Annahme des DR-16b-Protokolls | Server | C | In Prüfung: Entwurf separat #785; Trockenlauf und Gesamt-Abnahme offen | Trockenlauf der 5 Schritte im PR-Text; beide UI-Skripte HTTP 200; eigene prepush; No-Test: documentation only | 55ea21ce |
| DR-17a | README-Abschnitt und Anleitung in fünf Schritten als Entwurf; Quelle Root-Disposition 09.10. / PR #785 | bestehender Owner `srv-dr-17a` | Draft vor DR-16 erlaubt; Trockenlauf erst nach DR-16a und angenommenem DR-16b-Protokoll | Server | C | In Prüfung: Draft #785 | ≤ 150 ALL; eigene prepush; kein Laufzeit-/Startbeleg aus dem Text, bis Trockenlauf erfolgt Draft halten | PLAN-SYNC-0910b |

Expand Down Expand Up @@ -266,8 +278,8 @@ Baseline. Gemessen 08.10.2026 23:45 UTC auf `ea6ca7e` mit `git show <SHA>:<Datei
|---|---|---|---|---|---|---|---|---|
| V16-ARCH-D4-05 | Queue-Routen aus `api.rs` (PR #631) | Implementierer · Codex, Abnahme Root | – | Server | A | Erledigt #631 (merged 2026-10-08T08:10:01Z) | Merge über Mergify; `api.rs` 7858 | b9606dd4 |
| V16-ARCH-D7 | Einstellungen nach `store/settings.rs` (PR #632) | Implementierer · Codex | V16-ARCH-D4-05 (Review seriell) | Server | A | Erledigt #632 (merged 2026-10-08T15:25:08Z) | Merge über Mergify | 782d9e58 |
| V16-06 | Start nach Update ohne Journal stoppt fail-closed mit Anleitung | MCP-Integrationsentwickler | E2/V16-F3 beantwortet 09.10.; mn nach D5-GUARD → V16-UPD-CANCEL; Update-Drill | PC | A | Erledigt #832 (gemergt 2026-10-09T09:45:38Z, 7e74814); Folgepaket V16-06-FU (#845) in Prüfung | roter Test zuerst; Drill Erfolg/Abbruch/Fehler | 2557db66 |
| V16-UPD-CANCEL | Abbrechen-Knopf beim Update-Download (sonst ist der Drill „Abbruch“ unmöglich) | Desktop-App-Entwickler; Startzuweisung durch Ausführungs-Stabschef | V16-ARCH-D5b/#728 gemergt → D5-GUARD; mn danach neu zuweisen | PC-Drill; Gates Server möglich | A | Erledigt: #813 (78415d74), #828 (d0dc06d5), #830 (55c22381, re-cut von #821), #833 (9735583), #834 (34f2b0b) gemergt am 09.10. | compiling RED vor Fix; Abbruch nur vor Installation autoritativ quittieren, Ende/Thaw vor Retry; Drill und Screenshot; eigene prepush + zwei Fremdvendor-Reviews; Backend/IPC → UI vor Start in je ≤ 300 ALL schneiden | – |
| V16-06 | Start nach Update ohne Journal stoppt fail-closed mit Anleitung | MCP-Integrationsentwickler | E2/V16-F3 beantwortet 09.10.; mn nach D5-GUARD → V16-UPD-CANCEL; Update-Drill | PC | A | Erledigt #832 + Folgepaket #845 | roter Test zuerst; Drill Erfolg/Abbruch/Fehler | 2557db66 |
| V16-UPD-CANCEL | Abbrechen-Knopf beim Update-Download (sonst ist der Drill „Abbruch“ unmöglich) | Desktop-App-Entwickler; Startzuweisung durch Ausführungs-Stabschef | V16-ARCH-D5b/#728 gemergt → D5-GUARD; mn danach neu zuweisen | PC-Drill; Gates Server möglich | A | Erledigt: #813 (78415d74), #828 (d0dc06d5), #830 (55c22381, re-cut von #821), #833 (9735583), #834 (34f2b0b), #851 (Freeze-Test) gemergt am 09.10. | compiling RED vor Fix; Abbruch nur vor Installation autoritativ quittieren, Ende/Thaw vor Retry; Drill und Screenshot; eigene prepush + zwei Fremdvendor-Reviews; Backend/IPC → UI vor Start in je ≤ 300 ALL schneiden | – |
| V16-ARCH-D2 | Doppelte Projektanlage in `main.rs` zusammenführen | Implementierer; mn-Nachfolge gemäß L3 | vor V16-06 freigegeben (Inbox V16-D2) | Server | A | Erledigt #664 (merged 2026-10-08T16:13:04Z) | `rg -c 'fn create_project' src-tauri/src/main.rs` → eine Umsetzung; `main.rs` < 5133; eigene prepush und zwei Fremdvendor-Belege mit Disposition | 257e3a7b |
| V16-ARCH-D5a | Diagnosebefehle aus `main.rs` lösen | Implementierer · Claude | V16-ARCH-D2 | Server | A | Erledigt #704 (merged 2026-10-08T20:27:48Z) | `main.rs` −150 Zeilen | – |
| V16-ARCH-D5b | Einstellungsbefehle aus `main.rs` lösen | Implementierer · Claude | V16-ARCH-D5a | Server | A | Erledigt #728 (merged 2026-10-09T00:33:32Z) | `main.rs` −150 Zeilen | – |
Expand All @@ -277,7 +289,7 @@ Baseline. Gemessen 08.10.2026 23:45 UTC auf `ea6ca7e` mit `git show <SHA>:<Datei
| V16-ARCH-D8c | Ereignisnamen im Frontend | Implementierer · Codex | V16-ARCH-D8b | egal | B | Verschoben: nach v1.6.0 (Elias 08.10.) | `rg -n -e '["\x27\x60]worker:status' -e '["\x27\x60]supervisor:notification' -e '["\x27\x60]pty:output:' -e '["\x27\x60]pty:exit:' src` → 0 Treffer außerhalb des gemeinsamen Konstantenmoduls; `npm run typecheck` und `npm run test:unit` Exit 0 | – |
| V16-ADR-A1 | ADR A1 (`ApiBackend` teilen) in `docs/decisions.md` entscheiden | bestehender Root-Job `srv-v16-adr-a1`; Fable bei Root | – | Server | C | Erledigt #667 (merged 2026-10-08T14:34:03Z) | `docs/decisions.md` A1 nicht mehr „Vorschlag (offen)“; precommit-Lane Exit 0; Root-Abnahme am SHA | 72f47044 |
| V16-ADR-A7 | ADR A7 (st-Lane teilen) | Architekturberater Fable + Architekturberater Astra | V16-NACHBEOB (zwei Wochenmessungen) | egal | C | Verschoben | Eintrag in `docs/decisions.md` | – |
| V16-KI30 | KI-30 Windows-Flake: Restursache nach V16-01 | Performance- und Benchmark-Spezialist | st exklusiv für #737 bis zum Tag v1.6.0 | Server | A | In Prüfung: Draft #737; E1 vom 09.10. erlaubt genau eine dritte Runde nur zum Delta; Zwischenstand 09.10. 10:20Z: 26 Merge-Queue-Läufe seit #737 (01:11Z), 0 KI-30-Fehlschläge; 1 anderer Windows-Flake (Lauf 37910399142, goal_task_audit_control_uses_one_connection, Hotfix #843) | neuer Beleg (Queue-Lauf-ID) vor Fix; 0 KI-30-Fehlschläge in 40 Queue-Läufen; Quellenkonflikt und unveränderte Nachbeobachtung siehe unten | – |
| V16-KI30 | KI-30 Windows-Flake: Restursache nach V16-01 | Performance- und Benchmark-Spezialist | st exklusiv für #737 bis zum Tag v1.6.0 | Server | A | #737 gemergt; Zählung läuft (Ziel 40 saubere Merge-Queue-Läufe) | neuer Beleg (Queue-Lauf-ID) vor Fix; 0 KI-30-Fehlschläge in 40 Queue-Läufen; Quellenkonflikt und unveränderte Nachbeobachtung siehe unten | – |
| V16-03 | Tester-Kit: Installation, Rückmeldeformular, Grenzen | Implementierer · Codex | Inbox E16; kein Pflichtkonto | PC / erster externer Tester | C | Geplant: Konto entfällt laut Elias 08.10.; kein Release-Vorgänger | Trockenlauf in Windows Sandbox ODER beim ersten externen Tester; Sandbox-Aktivierung nicht freigegeben | – |
| V16-CHANGELOG | CHANGELOG v1.6.0 und Release-Notiz | Stabschef | DR-17 und die release-blockierenden Pakete aus V16-RELEASE (ohne diesen CHANGELOG selbst) | egal | C | Geplant | Eintrag `v1.6.0` über `v1.5.1` | – |
| V16-CHANGELOG-a | Unveröffentlichtes v1.6.0-Changelog-Gerüst; Quelle Root-Disposition 09.10. | bestehender Owner `srv-changelog-geruest` | nur an Basis gemergte Änderungen aufnehmen; unabhängig vom finalen Release-Text | Server | C | Erledigt #783 (gemergt 2026-10-09T01:02:31Z); Nachtrag #835 (gemergt 2026-10-09T10:05:01Z) | nur CHANGELOG.md, ≤ 120 ALL; eigene prepush; keine Tag-/Releasefreigabe; finale Aktualisierung bleibt V16-CHANGELOG | ed847e77 |
Expand Down
Loading