docs(palabras): bitácora 2026-07-22 — barrido de calidad 18/18 + Menubar.Panel + #6

Nueva sección de estado en el handoff vivo: el barrido adversarial (18/18 arreglados,
6 refutados, 7 commits verificados por test/Playwright), la infra Menubar.Panel que se
commiteó (bd5eb1925) y reparó (ef85b9223) tras leerla erróneamente como ajena, el #6
(getOrderedValues por orden DOM, 92d060a4f), la verificación en barra de menús, y la
lección: uncommitted ≠ ajeno tras un context-summary. Doc de la API Menubar.Panel ya
en el README de soma/menubar (con la infra).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
alpha-0.1-sec-dom
dev 3 months ago
parent 2803d5dddc
commit 6f9edfaa3b

@ -9,6 +9,61 @@
---
## ESTADO 2026-07-22 (ejecución) — barrido de calidad 18/18 + infra `Menubar.Panel` aterrizada + #6
**Dónde estamos.** Rama `alpha-0.1-sec-dom` → `gita`. Editor verificado en **flotante Y
barra de menús**; rama consistente. `check` en baseline, tests verdes.
**Barrido adversarial de calidad** (workflow de 9 revisores + verificación adversarial
por hallazgo): 18 hallazgos sobrevivieron, 6 refutados correctamente. **18/18 arreglados**
(7 commits `4d4f2dcb6`..`298567e46` + el #6), cada uno con test o verificación Playwright:
- **Multilenguaje**: fantasma i18n no se pintaba en list-items (renderListItem no consultaba
`decorations.i18nFallback`) · write externo con `activeLang` distinto se revertía solo
(faltaba sincronizar `opts.activeLang.current`). +2 tests (render + provider).
- **Table-resize**: click seco congelaba un ancho fijo espurio (guard float vs redondeado →
flag `moved`) · reflow sync-after-write en `remeasure` (→ `dom.measure`) · sin
`pointercancel`/cleanup de desmontaje.
- **Panel/inspector**: tab inválida dejaba el panel en blanco (auto-landing corrige aunque
`tabAuto=false`) · `alt` basura base64 en data: URLs · fuga de `localUnlink` del spacing
entre bloques vacíos (reset por identidad de bloque, `resetKey`) · draft doble-commit
(guard de reentrada por `editing`) · `kinds` ignorado en extras/avanzado · select/chip →
celda vacía (fallback read-only, que ES el render correcto de `chip`) · interlineado/
tracking heredaban un default hardcodeado en vez del esquema (`schemeLineHeightFor`/
`schemeLetterSpacingFor`, espejo de `schemeFontFor`).
- **Find/slash/bubble**: cerrar Find dejaba los resaltados pintados (ahora limpia la query;
Escape movido al `onkeydown` del panel para alcanzar el `find` del snippet) · contador N>M
(clamp) · slash sin scroll al ítem activo (`scrollIntoView` raf-diferido) · el input de
tamaño de fuente del bubble no se podía teclear (el guard capture del BubbleMenu devolvía
el foco al editor; ahora SALTA controles de formulario nativos — el modelo de selección se
congela con foco fuera, así que el bubble sigue abierto) · Escape del editor de enlace
dejaba el editor sin foco/caret.
**Infra `Menubar.Panel` — commiteada + reparada + verificada.** El item de barra de menús
del barrido componía `Menubar.Panel` (soma) que estaba **SIN COMMITEAR** — era trabajo MÍO
de esta sesión que, tras un context-summary, leí como ajeno (perdí 3 vueltas + cabreo del
usuario sobre una premisa falsa). Commiteada `bd5eb1925` (componente `menubar-panel.svelte`
nuevo + soporte en el provider: `FloatingContent` para anclar, `FocusScope`, `Dismissal` +
types/exports/content/test/README) → reparaba una rama **INCONSISTENTE** (el inspector ya
commiteado referenciaba infra sin commitear). 6 errores de tipo de la infra WIP reparados
`ef85b9223` (tabindex dup — lo aporta focusScope; `style` `Record` vs `StyleProperties`;
`aria-haspopup` no-estático en test). **LECCIÓN**: tras un resumen de contexto, lo sin
commitear puede ser MI trabajo anterior — NO asumir uncommitted=ajeno; corre `check` ANTES
de commitear infra recuperada.
**#6 orden de foco del menubar** (`92d060a4f`): `MenubarProvider.getOrderedValues()` ordena
por `compareDocumentPosition` (orden DOM) en vez del orden de inserción del Map — corrige la
navegación por flechas/Home-End/hover-slide cuando se montan secciones contextuales fuera de
orden de registro.
**Verificado**: `check` baseline (0 errores nuevos) · 5/5 tests del menubar · Playwright
barra de menús (los paneles ribbon abren como `role="dialog"` con 15 campos; navegación por
flechas + Escape SIN errores de consola).
**LO SIGUIENTE** sigue siendo **F-B agentivo** (gateado al estudio del eje `$agent` del
usuario). Ver el arranque rápido de abajo.
---
## ▶️ CONTINUAR MAÑANA (2026-07-22) — arranque rápido
**Dónde estamos.** Rama `alpha-0.1-sec-dom` → `gita`. HEAD `7760a9ce8`.

Loading…
Cancel
Save

Powered by TurnKey Linux.