diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 324d76e..ce9b5ba 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -23,6 +23,7 @@ reverse. - A document created, renamed or deleted in another window shows up without a reload now, and a document deleted elsewhere while open here stays until you type — typing brings it back - The modal "open more than once" dialog is gone; the one remaining loss case — the same non-shared document open in two windows — is found by a per-document lock, and the second window chooses: open another document, view only until the other window lets go, or edit anyway - The other-window warning now names the document and says whether it is open in the app or in the browser — and stays silent when nothing collides +- Fix: in the "open in another window" dialog the list of other documents squeezed its buttons until the names ran into each other — picking one is a dropdown now, one line tall however many documents you have - An MCP server for AI agents recorded as planned: it lives in the backend, runs the one JS parser through GraalJS, hands plans to Claude Code and other agents as resources and tools over streamable HTTP, and writes changes as conflict-safe line diffs — no new runtime, spelled out in an RFC before it is built ## 2026-08-28 diff --git a/docs/DECISIONS.md b/docs/DECISIONS.md index b6edadf..f13ab60 100644 --- a/docs/DECISIONS.md +++ b/docs/DECISIONS.md @@ -8974,6 +8974,38 @@ mit; Gegenprobe per Mutation gezogen — ohne die Zeile bleibt der Index ohne das Dokument, während Meta und Text dastehen. Sonst heilt sich der Index von selbst, weil `indexHint()` die Speicher-Schlüssel mitliest. +**Nachtrag — die Auswahl im Sperr-Dialog ist ein Aufklapp-Feld +(2026-09-02).** Gemeldet aus der produktiven Instanz: „Die Buttons mit den +anderen Dokumenten überlappen sich und sind unleserlich." Die Ursache ist +nicht die Zahl der Dokumente, sondern eine Flexbox-Falle: Die Liste war ein +`flex`-Spaltenkasten mit gedeckelter Höhe (9rem), und ihre Knöpfe tragen +serienmäßig `flex-shrink: 1` — statt zu scrollen, schrumpfte der Kasten sie +unter ihre eigene Textzeile. Nachgemessen bei acht Dokumenten: 14,5 px +Kastenhöhe gegen 32 px Inhalt, also 17,5 px Überstand je Knopf bei 4 px +Abstand — die Beschriftungen liefen ineinander. + +Zwei Wege standen offen: `flex-shrink: 0` (dann scrollt die Liste wirklich) +oder ein **Aufklapp-Feld**. Entschieden (Nutzer): das Aufklapp-Feld. Es ist +**eine Zeile hoch, unabhängig von der Anzahl** — und der Dialog liegt in +einem Kasten, der auf dem Telefon oder bei kleinem Editor-Panel ohnehin +knapp ist; eine Liste, die mit der Dokumentenzahl wächst, bleibt dort auch +scrollend unhandlich. Die Auswahl aus vielen gleichartigen Dingen ist +zudem genau das, wofür ein Aufklapp-Feld die vertraute Geste ist. + +Gebaut mit dem vorhandenen Vokabular: die Kopfzeile ist jetzt ein echtes +`