diff --git a/continue.md b/continue.md index 6a127ab8f..396a3ad29 100644 --- a/continue.md +++ b/continue.md @@ -87,6 +87,16 @@ Actualizacion Eidos flat residue cleanup 2026-05-17: - `npx vitest run src/uix/eidos` -> 7 archivos, 82 tests OK. - `npm run check` -> 0 errores, 0 warnings. +Actualizacion Eidos CSS entry guard 2026-05-17: + +- `index.css` limpia comentario stale de la fase "air-translated"; las recipes + actuales se tratan como entrada activa de Eidos. +- `recipe-css-contract.test.ts` anade guardia para que todo + `components/{name}/{name}.css` este importado desde `src/uix/eidos/index.css`. +- Validado: + - `npx vitest run src/uix/eidos/recipe-css-contract.test.ts` -> 6 tests OK. + - `npm run check` -> 0 errores, 0 warnings. + Actualizacion Eidos config audit 2026-05-17: - Resuelta la parte no-componente de la auditoria consolidada de diff --git a/src/uix/eidos/index.css b/src/uix/eidos/index.css index e445f9d0a..ba18b5a97 100644 --- a/src/uix/eidos/index.css +++ b/src/uix/eidos/index.css @@ -59,7 +59,7 @@ @import './archetypes.css'; @import './events.css'; -/* ── Component recipes (V1.5 hand-rolled; phase 2 replaces with air-translated) ── */ +/* ── Component recipes ──────────────────────────────────────────────────── */ @import './components/icon/icon.css'; @import './components/avatar/avatar.css'; @import './components/toast/toast.css'; diff --git a/src/uix/eidos/recipe-css-contract.test.ts b/src/uix/eidos/recipe-css-contract.test.ts index 996a97557..a294cb83b 100644 --- a/src/uix/eidos/recipe-css-contract.test.ts +++ b/src/uix/eidos/recipe-css-contract.test.ts @@ -97,6 +97,15 @@ describe('Eidos recipe CSS contract', () => { expect(extra).toEqual([]) }) + it('imports every component CSS recipe from the Eidos entrypoint', () => { + const indexCss = readFileSync('src/uix/eidos/index.css', 'utf8') + const missingImports = readComponentCssFiles() + .map(({ component }) => `./components/${component}/${component}.css`) + .filter((path) => !indexCss.includes(path)) + + expect(missingImports).toEqual([]) + }) + it('keeps raw color values out of component CSS', () => { const violations = readComponentCssFiles() .filter(({ css }) => RAW_COLOR_LITERAL.test(css))