You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
6.6 KiB
6.6 KiB
Next Steps
Estado al cierre:
- Suite unitaria verde:
npm test-> 103 archivos, 1189 tests. fmtsverde:npx vitest run src/arts/fmts-> 14 archivos, 39 tests.connverde:npx vitest run src/arts/conn-> 5 archivos, 28 tests.authverde:npx vitest run src/arts/auth src/svrs/auth src/libs/auth-> 4 archivos, 14 tests.- Refactor tecnico posterior:
svrs/auth/engine-auth.tsya delega CSRF encsrf-flow.ts, coherente con password/session/recovery/device flows.libs/cach/engine.tscentraliza eventos de lectura conemitForContext(...).arts/conn/connection.tsusacreateConnectionIdFactory(...)desde helpers.arts/conn/connection.tsdelega auth/request/ACK request-reply enconnection-requests.ts.svrs/auth/adapters/memory-store.tsqueda como composition root de 39 lineas; la logica se reparte en stores internos de credentials, flows, linked accounts, sessions/devices, refresh y state/snapshot.arts/perm/client.tsdelega transporte HTTP/JSON enclient-http.ts; el cliente queda centrado en cache, snapshot y fallback.arts/timr/engine-timers.tsdelegaTimerHandlecancel/reschedule entimer-handle.ts.arts/stor/engine-storage.tsdelega IDs de adapter, bus keys y suscripciones cross-tab enadapter-registry.ts.arts/stor/engine-storage.tsdelega el registro de defaults conflictivos endefaults-registry.ts.libs/cach/engine.tsdelega creacion/escritura/fetch-store de envelopes enruntime-io.ts.libs/cach/engine.tsdelega safe-delete y clear enruntime-delete.ts.arts/sess/engine-session.tsdelega la clasificacionnone/anonymous/identifiedensession-identity.ts.arts/sess/engine-session.tsdelega snapshot, generation, dispatch, persistencia y commits ensession-state.ts.arts/sess/engine-session.tsdelega la resolucion de revoke local/global/degradado ensession-revoke.ts.arts/sess/engine-session.tsdelega refresh, stale-generation, validacion y diagnosticos de refresh ensession-refresh.ts.arts/perm/client.tsdelega claves/scope de cache enclient-keys.tsy lectura de snapshot enclient-snapshot.ts.arts/stor/engine-storage.tsdelega lectura/escritura/validacion/migracion de entradas enentry-runtime.ts.arts/timr/engine-timers.tsdelega armado nativo, ejecucion, finalizacion e intervalos entimer-runner.ts.arts/cach/active-cache.svelte.tsdelega la entry reactiva enactive-cache-entry.svelte.tsy normalizacion de errores en helper compartido.arts/auth/active-auth.svelte.tsdelega CSRF, validacion de respuestas, normalizacion de errores e invalidacion de cache enactive-auth-runtime.ts.arts/conn/connection.tsdelega apertura/cierre logico eisConnectedenconnection-lifecycle.ts.arts/conn/connection.tsdelega la programacion de reconnect y exhaustion enconnection-reconnect-runtime.ts.libs/perm/evaluator.tsdelega helpers puros de resultado, dependencias y comparacion enevaluator-helpers.ts.arts/http/engine-http.tsdelega la validacion preflight debodySchemaenrequest-validation.ts.arts/http/engine-http.tsdelega la resolucion final de response/error enresponse-resolution.ts.arts/sium/core/pipe.tsqueda centrado en composicion; factoriesrefine/transform/codec/metaviven ensteps.ts.libs/cach/engine.tsdelega lecturaget()enruntime-get.ts.libs/cach/engine.tsdelega escrituraset()enruntime-set.ts.libs/cach/engine.tsdelegaquery()enruntime-query.ts; conserva composition root para context/io/delete/invalidate/mutate/explain.arts/conn/connection.tsdelega decode/routing de frames entrantes enconnection-message-router.ts.arts/conn/connection.tsdelega el intento open/auth/flush/join enconnection-connect.ts.arts/conn/connection.tsdelega current transport, attach/detach y close enconnection-transport-runtime.ts.arts/conn/connection.tsdelega cierre intencional y close-event handling enconnection-close.ts.arts/timr/engine-timers.tsdelega fan-out de listeners y diagnostico de listeners entimer-events.ts.arts/timr/engine-timers.tsdelega la construccion de entradas internas entimer-entry.ts.arts/timr/engine-timers.tsdelega cancelacion y seleccion por scope entimer-cancel.ts.arts/timr/engine-timers.tsdelega entrada viva, contexto de task y max-runs entimer-entry.ts.
- Integracion total ampliada:
Auth.signOut()valida anonimizacion, invalidacion dePermissionsy eventoCache.invalidate. - Tanda focalizada verde:
npx vitest run src/arts/conn src/libs/cach src/arts/cach src/svrs/cach src/arts/auth src/svrs/auth src/libs/auth src/arts/aapp/test/ecosystem.integration.test.ts-> 19 archivos, 82 tests. /test/ecosystemrevisado en navegador: carga sin errores de consola,arcambia artl, Formats se actualiza por locale, Perm cambia con rolviewer, Cach re-scopea por locale y Conn loopback publica/recibe.src/arts/aapp/test/ecosystem.integration.test.tsampliado para cubrir rolviewerno-allow y cache re-scoped por locale.- Referencias residuales de marca anterior eliminadas de
src/fuera de rutas temporales: docs, páginas de test y constantes de cookies/headers auth usan ahoraActive/active. src/arts/conn/README.mdampliado: contrato de raíz/conexión/canal, estados, transportes, request/reply, reconnect, heartbeat, sesión, diagnostics/logger, errores y testing.src/arts/fmts/README.mdampliado con guia de uso,LocaleSource, contrato auto/manual, submodulos, listeners, integracion conaappy tests.fmtsredujo boilerplate activo con helpersreadFrom/writeToy los engines comparten directamente las funciones decreateFormatsLocaleState; APIs públicas sin cambios.- No tocar
src/web/routes/temp/hasta decidir que hacer con esa pagina. - No commitear
.idea/,.claude/ni.opencode/.
Pendiente para manana:
- Revisar documentacion restante de
cach,perm,authyfmtscon ojo de consumidor externo, no solo tecnico. - Continuar la reduccion de archivos grandes: prioridad
conn/connection.ts, extraccion progresiva de runtime read/write enlibs/cachy separar helpers de test/server auth cuando crezcan. - Ampliar tests de integracion cruzada:
auth + sess + perm + cach + http + stor + fmts + conn + timr + logr. - Revisar la adopcion final del contrato comun
Logger/ diagnostics en todos los modulos, sin acoplar artefactos aarts/logr; primera pasada limpia salvoaappcomo composition root,arts/logry tests. - Decidir que hacer con la pagina temporal que bloquea
npm run check; mientras tanto, validar connpm testy tests focalizados.