Back to flin
flin

Errores de ordenamiento de entidades y formato de tiempo

Dos errores en una sesión: la aleatoriedad de HashMap rompiendo el orden de entidades, y las llamadas a funciones en plantillas devolviendo None -- ambos corregidos en el renderizador de FLIN.

Juste A. Gnimavo (Thales) & Claude | March 26, 2026 2 min flin
EN/ FR/ ES
flinrust

Fue una sesión de doble error. Dos problemas no relacionados conspiraban para hacer que la aplicación de tareas pareciera rota: las entidades aparecían en orden aleatorio después de actualizar, y las funciones de formato de tiempo no devolvían nada en las plantillas.

Error uno: La base de datos ZeroCore almacenaba entidades en un HashMap, que no proporciona garantías de ordenamiento. La corrección añadió un paso de ordenamiento: entities.sort_by_key(|e| (e.created_at, e.id)).

Error dos: La función eval_expr_with_scope() del renderizador no manejaba Expr::Call. Las llamadas a funciones caían en la rama catch-all y devolvían None. Se añadió evaluación de llamadas a funciones al renderizador para funciones integradas, junto con acceso a campos internos de entidades (id, created_at, updated_at, version, etc.).

La combinación de estos dos errores creaba una experiencia confusa donde todo parecía fundamentalmente roto, cuando en realidad la persistencia era perfecta -- los errores estaban en la presentación (ordenamiento) y el renderizado (llamadas a funciones).


Esta es la Parte 167 de la serie "Cómo construimos FLIN", que documenta cómo un CEO en Abidjan y un CTO de IA diseñaron y construyeron un lenguaje de programación desde cero.

Navegación de la serie: - [166] El error del método .get() de entidades - [167] Errores de ordenamiento de entidades y formato de tiempo (estás aquí) - [168] Corrección de valores predeterminados de entidades y alternador

Share this article:

Responses

Write a response
0/2000
Loading responses...

Related Articles

Thales & Claude deblo

El segfault que no era nuestro: cómo lanzamos el tracking del día de lanzamiento de Déblo en la noche del despliegue — analítica condicionada por entorno, atribución nativa de las tiendas, tres bugs que el compilador no podía ver y un build sin memoria que diagnosticamos en lugar de revertir

El 1 de julio de 2026 — el día del lanzamiento — el riesgo nunca fue el texto. Era que las campañas de pago salieran a ciegas. Este es el build-log de cómo desplegamos la analítica y la atribución de instalaciones de Déblo como código en la noche del lanzamiento: etiquetas GA4, Meta y LinkedIn condicionadas por entorno que se despliegan sin riesgo antes de que existan las cuentas publicitarias; atribución enrutada por los canales nativos de las tiendas en lugar del pixel web; una auditoría adversarial que atrapó tres bugs que tanto el typechecker como el build dieron por buenos; y un despliegue en Easypanel que hizo segfault en el primer build — que demostramos que no era nuestro código antes de tocar una sola línea.

18 min Jul 1, 2026
deblolaunch-dayclaude-opus-4.8claude-code +26
Thales & Claude thales

Trece agentes, cuarenta y tres minutos: la primera sesión Workflow de Claude Fable 5, y lo que un script de orquestación determinista cambia en los builds multiagente

Un prompt, trece agentes, cuarenta y tres minutos: la primera sesión de producción con Claude Fable 5 y la herramienta Workflow de Claude Code entregó un sitio web de producción completo de siete páginas más un endpoint backend de captura de leads, en un solo commit. La bitácora: el script de orquestación determinista, el patrón de inyección de contrato entre fases, la economía por agente del fan-out paralelo, y el suspenso del límite de sesión que el diario de reanudación convirtió en un no-evento.

23 min Jun 12, 2026
claude-fable-5claude-codeworkflow-toolmulti-agent +10
Thales & Claude casp

La puerta detectó su propia deriva: un día dentro de CASP con Claude Fable 5

Le entregamos al modelo Claude más autónomo hasta la fecha las llaves de CASP — la CLI open source que mantiene honestos a los agentes de código IA frente a git — con la autoridad de rechazar nuestra propia roadmap. Rechazó cinco cosas, encontró dos bugs reales en el validador al hacerle dogfooding, los corrigió bajo una puerta de dos auditores, y dejó casp check completamente en verde sobre su propio repositorio por primera vez. CASP 0.3.0 es el resultado.

15 min Jun 10, 2026
caspzerosuiteworkflowai-cto +9