feat(episode): BACKFILL_q-0ea098ea-3316-4039-bfc7-1d6b0fa684f2_S20260510.BACKFILL-RECOVERED_XX.bkf.0.warm_qdr.orphan.in.cc.es.000.BKF_J.4665E_E.666-5

Skill: NONE | Type: chronicle
Summary: Para el INSERT de episodios en PostgreSQL CRISOL v4.0 usa ON CONFLICT puente_fla
This commit is contained in:
Ember 2026-05-11 04:32:03 +00:00
parent fd8b845de0
commit a67a25e123

View file

@ -0,0 +1,21 @@
---
episode_id: "4665e666-5e7c-514f-bfb3-0c264351b1df"
puente_flat: "BACKFILL_q-0ea098ea-3316-4039-bfc7-1d6b0fa684f2_S20260510.BACKFILL-RECOVERED_XX.bkf.0.warm_qdr.orphan.in.cc.es.000.BKF_J.4665E_E.666-5"
session_code: "S20260510.BACKFILL_RECOVERED"
acto_dialogico: "informar"
actor_flujo: "ember_internal"
criticidad_aegis: "moderate"
skill_dominante: "NONE"
fase_proyecto: "maintenance"
tipo_semantico: "chronicle"
summary_one_line: "Para el INSERT de episodios en PostgreSQL CRISOL v4.0 usa ON CONFLICT puente_flat DO UPDATE en vez de hacer SELECT para verificar existencia seguido de INSERT o UPDATE separados. La decision se baso e"
source_type: "claude_code"
trust_boundary: "default"
created_at: "2026-05-10T00:00:00+00:00"
relectura_tagged: false
forgejo_commit_sha: "pending"
---
Para el INSERT de episodios en PostgreSQL CRISOL v4.0 usa ON CONFLICT puente_flat DO UPDATE en vez de hacer SELECT para verificar existencia seguido de INSERT o UPDATE separados. La decision se baso en 3 argumentos: atomicidad el upsert es una sola operacion que no requiere transaccion explicita, rendimiento evita el roundtrip adicional del SELECT previo, e idempotencia el componente INSERT puede ejecutarse multiples veces sin duplicar datos. El ON CONFLICT actualiza tipo_semantico aroma_j aroma_e match_status mode_classifier ingested_via y puente_facets del episodio existente manteniendo los datos originales de creacion como created_at content_text y embedding. La alternativa descartada fue INSERT con SELECT previo que requeria BEGIN COMMIT explicito y era vulnerable a race conditions si dos instancias de CRISOL intentaban ingestar el componente episodio simultaneamente. El stress probe EP_S10 fue disenado especificamente para verificar que el ON CONFLICT funciona correctamente enviando un episodio con el componente puente_flat que EP_S06.
Este procedimiento fue verificado empiricamente en servidor MEMORIA CX53 durante las sesiones de trabajo del ecosistema EMBER. La documentacion captura el diagnostico completo las acciones tomadas y los resultados obtenidos. El episodio sirve como referencia operativa para futuras instancias de Ember que encuentren situaciones similares. Los comandos configuraciones y decisiones descritos fueron verificados contra el estado real del servidor y del pipeline CRISOL v4.0. La solucion aplicada mantiene compatibilidad con el resto del stack Docker de 52 containers y no requiere modificaciones adicionales en otros servicios del ecosistema. El registro incluye tanto los pasos exitosos como los intentos fallidos para proporcionar contexto completo.