diff --git a/AGENTS.md b/AGENTS.md index 0bfb4b0..32f8acc 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -792,7 +792,8 @@ pass with `node scripts/check-ui-contract.mjs --write-baseline`. corner close in a view-swap dialog lands it ~12px off the title centerline). Knobs: `width` (mode-scoped default: `2xl` workbench · `xl` view-swap, whose slim-row list reads sparse a rung wider; `'lg'` one-field - forms · `'3xl'` editor-heavy), + forms · `'3xl'` editor-heavy · `'4xl'` a history rail beside the working + pane), `grow` (fixed `h-[80dvh]` for bodies with no intrinsic height — editors), `view-swap` (header is a `DialogViewHeader`, so the built-in corner close is disabled — the pairing is enforced by the prop, not by memory), diff --git a/src/components/dialog/DialogPanel.vue b/src/components/dialog/DialogPanel.vue index c90cc81..f5588f7 100644 --- a/src/components/dialog/DialogPanel.vue +++ b/src/components/dialog/DialogPanel.vue @@ -19,7 +19,9 @@ // - width: panel width rung. Defaults are MODE-SCOPED (see effectiveWidth): // 2xl for workbench, xl for view-swap; 'lg' for a one-or-two-field form // (a 2xl panel around one field reads barren); '3xl' for editor-heavy -// bodies (Monaco import). +// bodies (Monaco import); '4xl' for a two-column body — a history rail +// beside the working pane (the feedback dialog), where 3xl minus the rail +// leaves the working pane too narrow to read a conversation. // - grow: false (default) → max-h-[80dvh], panel hugs its content and the // cap only bites when content is tall. true → h-[80dvh] fixed — required // when the body has NO intrinsic height (an editor/iframe that must be @@ -47,7 +49,7 @@ const props = withDefaults(defineProps