Skip to content
    HAQQ
    • Precios
    Comenzar Gratis
    Comenzar GratisReservar una demo
    Iniciar sesión
    1. Inicio
    2. Blog
    3. ¿Puede la IA planificar un litigio? Construimos un planificador GOAP
    Volver al BlogIA & Tech Legal

    ¿Puede la IA planificar un litigio? Construimos un planificador GOAP

    Construimos un planificador de litigios A* funcional en 517 líneas - y luego nos negamos a usarlo. Las cuatro puertas que todo planificador de IA debe pasar antes de tocar un caso real.

    5 de mayo de 2026
    9 min de lectura
    |
    Stephane BoghossianStephane Boghossian
    ¿Puede la IA planificar un litigio? Construimos un planificador GOAP

    Construimos un planificador GOAP en una tarde. Produce un plan limpio de nueve pasos para objetivos de ingeniería en cero milisegundos. No vamos a dejarlo cerca de una moción de desestimación. Aquí está el porqué — y las cuatro puertas que cerraríamos antes de hacerlo.

    La propuesta y el veredicto

    La planificación de acciones orientada a objetivos (GOAP) es la arquitectura que usan los motores de ajedrez: mantener un árbol de futuros, buscar el camino más barato desde donde estás hasta donde quieres llegar, podar el resto. Encaja mucho mejor con la litigación que un modelo de tipo chat. Mociones, discovery, juicios — todo son secuencias de movimientos bajo restricciones. Los modelos de tipo chat producen la siguiente frase plausible. Los planificadores se comprometen con un objetivo y trabajan hacia atrás.

    Datos clave

    • Un planificador GOAP A* funcional tiene 517 líneas de JavaScript plano sin dependencias — portado en una tarde desde el goal_ui de claude-flow de ruflo.
    • El planificador GOAP de claude-flow de ruflo no implementa replanificación adaptativa: plan() ejecuta A* exactamente una vez al enviar el objetivo — verificado en los puntos de llamada en Index.tsx y ResearchReportModal.tsx (CITA EXTERNA: código fuente de ruflo claude-flow, leído directamente).
    • Presentar una moción 12(b)(6) sustantiva antes de invocar el arbitraje puede renunciar al derecho a arbitrar bajo Morgan v. Sundance (2022) — un planificador de camino más corto se mete de lleno en esa trampa.

    Así que construimos uno. 517 líneas de JavaScript plano, cero dependencias, portado en una tarde desde el planificador GOAP A* que viene incluido en la aplicación React `goal_ui` de ruflo. Funciona sobre objetivos de ingeniería como 'lanzar la refactorización de autenticación con pruebas y un PR' en cero milisegundos y produce un plan limpio de nueve pasos.

    No vamos a dejar que toque una moción real. Todavía no. Este artículo trata sobre el porqué, y sobre qué tendría que cambiar antes de que lo hiciéramos. Si viniste aquí buscando un elogio entusiasta de la próxima novedad de IA para abogados, el objetivo de este artículo es el contrario: aquí está el nivel de rigor que exigimos antes de enrutar un objetivo de litigación a través de cualquier planificador — el nuestro, el de ruflo, el de quien sea — y la brecha entre el planificador de hoy y ese nivel.

    Qué es realmente GOAP

    GOAP toma tres entradas: un estado objetivo (hechos que quieres que sean verdaderos — 'el PR está abierto', 'CI está en verde', 'desplegado'), un estado inicial (lo que es verdad ahora mismo) y una biblioteca de acciones (cada movimiento que puedes hacer, cada uno con precondiciones y efectos — '`open_pr` requiere `pushed=true` y `diff_reviewed=true`; establece `pr_open=true`'). Luego ejecuta una búsqueda A* — el mismo algoritmo que usa el GPS para trazar rutas evitando el tráfico — sobre el espacio de secuencias de acciones y devuelve el camino válido más barato desde el estado inicial hasta el objetivo. Si un paso falla durante la ejecución, se supone que debe replanificar desde el nuevo estado.

    Para los abogados, la analogía más cercana es el ajedrez. Un gran maestro no piensa un movimiento a la vez; mantiene un árbol de futuros y poda a medida que avanza la partida. GOAP es eso, hecho mecánico. No es generativo; es búsqueda.

    La arquitectura encaja con la litigación casi demasiado bien. Una moción para compeler arbitraje tiene precondiciones estrictas (existe una cláusula de arbitraje, se ha notificado una demanda, aún no se ha presentado ninguna moción de fondo) y efectos estrictos (se cierran los riesgos de renuncia, el tribunal debe pronunciarse sobre la arbitrabilidad). El discovery tiene un orden estricto (interrogatorios escritos antes de las deposiciones, certificación de clase antes del fondo, reunión y consulta antes de las mociones para compeler). El juicio sumario tiene un oráculo de aprobado/reprobado. La forma del trabajo tiene forma de GOAP.

    Lo que construimos

    Cuatro archivos: `planner.js` (165 líneas, A* + min-heap binario), `actions.js` (134 líneas, doce acciones de ingeniería), `parse.js` (58 líneas, tabla de frases que convierte inglés en un estado objetivo), `cli.js` (160 líneas, ejecutor). Total 517 líneas. Sin dependencias de npm. Legible en veinte minutos.

    Lo ejecutamos contra el objetivo 'lanzar la refactorización de autenticación con pruebas y un PR':

    text
    goal predicates: {"pr_open":true,"ci_green":true,"deployed":true}
    1. understand_code  (cost 2)  -> /zoom-out
    2. write_tests      (cost 3)  -> /tdd
    3. run_tests        (cost 1)  -> bash:test
    4. review_diff      (cost 1)  -> /review
    5. commit           (cost 1)  -> git:commit
    6. push_branch      (cost 1)  -> git:push
    7. open_pr          (cost 1)  -> /ship
    8. wait_ci          (cost 5)  -> bash:ci-wait
    9. merge_and_deploy (cost 2)  -> /land-and-deploy
    
    total cost: 17
    expansions: 13   time: 0 ms   found: true

    Nueve pasos, coste 17, trece expansiones de nodos, cero milisegundos. Cada paso se corresponde con una skill de gstack o un comando de shell, así que el plan es ejecutable, no decorativo. También probamos un objetivo más pequeño ('probar el módulo de login' — 3 pasos, coste 6) y uno irrealizable (un predicado que ninguna acción establece — devolvió `found: false` con el plan parcial más cercano en lugar de fallar o entrar en bucle). Los tres comportamientos coinciden con la especificación.

    Esto tomó una tarde. No es la parte difícil.

    Por qué portamos esto desde ruflo

    Ruflo (el ecosistema `claude-flow`) incluye un planificador GOAP dentro de su aplicación React `goal_ui` — `goapPlanner.ts`, un solo archivo, 180 líneas. La arquitectura es sólida. La extrajimos.

    Mientras estábamos ahí, leímos el código fuente con cuidado. Una afirmación que no sobrevive al contacto con él: el planificador no implementa replanificación adaptativa. El método `plan()` ejecuta A* exactamente una vez al enviar el objetivo y devuelve un `Step[]` que impulsa una animación de interfaz. No hay bucle de replanificación, ni invalidación de plan, ni recuperación de fallos en el archivo. Verificamos los puntos de llamada en `Index.tsx` y `ResearchReportModal.tsx`. La misma historia.

    Mencionamos esto no para criticar a ruflo — el núcleo del planificador es buen código — sino porque importa para el resto de este artículo. La replanificación adaptativa es la característica única que más querrías antes de dejar que un planificador se acerque a un asunto legal real, y la implementación de código abierto más destacada adyacente a lo legal no la tiene. Nosotros tampoco, todavía. Nadie más que hayamos revisado la tiene tampoco.

    Los tres objetivos de litigación que no ejecutamos

    El plan original era ejecutar tres objetivos de litigación reales a través del planificador y hacer que un litigante sénior evaluara la salida. No lo hicimos. Dos razones. Primero, enrutar la estrategia de litigación a través de una URL pública de terceros — incluso una estrategia sintética sobre un patrón de hechos hipotético — tiene implicaciones de privilegio que no queríamos navegar para una entrada de blog. Si no lo haríamos por un cliente, no deberíamos hacerlo por nosotros mismos. Segundo, nuestra biblioteca de acciones tiene doce entradas y todas son acciones de ingeniería: `understand_code`, `write_tests`, `commit`, `push_branch`, `open_pr`, `wait_ci`, `merge_and_deploy`. Apuntarlo a una moción de desestimación produciría un plan que le diría con confianza a un litigante que hiciera `git commit` de su contestación.

    Pero los tres casos de prueba que escribimos siguen siendo útiles — no como benchmarks que el planificador superó, sino como un factor forzador de lo que la próxima versión tiene que manejar.

    Caso 1 — Moción de desestimación con defensa de cláusula de arbitraje. Prompt: 'ganar una moción de la Regla 12(b)(6) en una disputa contractual donde el demandante alega incumplimiento pero el contrato tiene una cláusula de arbitraje clara'. La trampa: 12(b)(6) es el vehículo equivocado. El arbitraje se hace cumplir bajo la FAA §§ 3-4 con una moción para compeler. Presentar una 12(b)(6) sustantiva antes de invocar el arbitraje puede renunciar al derecho a arbitrar bajo Morgan v. Sundance (2022). Un planificador que redacta la 12(b)(6) mete al cliente en territorio de negligencia profesional.

    Caso 2 — Estrategia de discovery para una demanda colectiva de salarios y horas con 10 empleados (CA). Prompt: 'construir un plan de discovery, priorizando solicitudes de bajo coste y alto apalancamiento'. Un asociado junior propondría deposiciones 30(b)(6) de inmediato. El plan correcto pone los interrogatorios escritos antes de las deposiciones, bifurca la certificación de clase del fondo, ejecuta el aviso de exclusión voluntaria Belaire-West antes de contactar a cualquier miembro putativo de la clase, y emite una citación al proveedor externo de nómina (datos más limpios, más rápido, sin coste de producción para la defensa). La secuencia importa más que la sustancia.

    Caso 3 — Juicio sumario sobre una cláusula de no competencia en California. Dos trampas. Trampa uno: el prompt cita el 'Código Laboral § 16600' — una cita que no existe. La cita correcta es el Código de Negocios y Profesiones § 16600. Trampa dos: incluso con la cita corregida, el empleador casi con certeza pierde. SB 699 y AB 1076 (vigentes desde el 1 de enero de 2024) ampliaron el § 16600 y añadieron un derecho de acción privado con honorarios de abogados. La jugada correcta es aconsejar al cliente que abandone por completo la aplicación de la no competencia y gire hacia una teoría de secreto comercial bajo CUTSA, si los hechos lo respaldan. Un planificador que encuentra el camino A* más corto hacia 'ganar sobre la no competencia' encuentra un camino hacia una presentación sancionable.

    Estos tres casos comparten un rasgo estructural: la salida más valiosa no es un plan hacia el objetivo declarado por el usuario. Es 'tu objetivo está equivocado; aquí está el objetivo correcto'.

    Eso no es lo que hace A. A encuentra el camino más corto. Encontrará los caminos más cortos hacia estrategias perdedoras.

    Prueba HAQQ AI gratis

    Experimenta la redacción e investigación legal con IA

    Cuatro puertas antes de confiarle esto a la litigación

    Esto es lo que tendría que cambiar. Nada de esto es teórico — estos son los cuatro elementos en la parte superior del plan v0.2.

    1. La biblioteca de acciones tiene que rediseñarse de principio a fin. Las acciones de ingeniería tienen una dimensión de coste (tiempo de desarrollador) y precondiciones limpias. Las acciones legales tienen precondiciones jurisdiccionales (se aplica la FAA, el tribunal está en CA, la cláusula de arbitraje sobrevive al § 16600), precondiciones estatutarias, precondiciones de calendario (el plazo de contestación vence en 21 días) y precondiciones adversariales (la parte contraria aún no ha presentado X). La dimensión de coste también es distinta: coste monetario, horas de socio, riesgo de sanciones, exposición a traslado de honorarios. Una biblioteca de acciones legales seria probablemente tiene entre 200 y 500 acciones con predicados parametrizados — una ontología real, escrita por litigantes, delimitada por área de práctica.

    2. El analizador de objetivos tiene que manejar inglés legal real. `parse.js` es una tabla de frases de cinco entradas. Mapea 'lanzar la refactorización de autenticación' a `{pr_open, ci_green, deployed}` mediante coincidencia de subcadenas. No puede analizar 'ganar una moción de la Regla 12(b)(6) en una disputa contractual donde el contrato tiene una cláusula de arbitraje clara'. La solución es pequeña — Haiku en modo JSON, restringido por esquema a predicados conocidos. Aproximadamente medio día. La más pequeña de las cuatro puertas, y absurda sin las otras tres.

    3. El planificador tiene que ser autoalojado. Nada de un asunto real de un cliente se acerca a `goal.ruv.io` ni a ninguna URL de terceros. Dejando de lado las preocupaciones de privilegio, no puedes auditar un planificador que no ejecutas tú. Autoalojado, en infraestructura bajo el control del abogado, con registros que el abogado posee. No negociable para HAQQ.

    4. El planificador tiene que saber cuándo rechazar el objetivo. El más difícil. Un planificador A puro que siempre encuentra el camino más corto ejecutará estrategias perdedoras de forma impecable. La solución no es solo la replanificación adaptativa (volver a ejecutar A cuando una acción falla). La solución es la crítica del objetivo: un paso de IA legal que se ejecuta antes de planificar, comprueba el objetivo contra el panorama doctrinal (§ 16600 + SB 699 + AB 1076 — 'esta acción de cumplimiento pierde') y presenta un objetivo alternativo ('girar hacia CUTSA'). La replanificación corrige fallos de ejecución. La crítica del objetivo corrige el fallo más profundo — comprometerse por completo con un objetivo equivocado. Ambas son necesarias; ninguna está implementada hoy.

    Lo que esto enseña sobre la IA en el trabajo legal

    La mayoría de los productos de IA optimizan para 'dame una respuesta con confianza'. Esa es la forma equivocada para la litigación, donde el trabajo consiste en cuestionar la pregunta, identificar lo que el cliente cree que quiere frente a lo que realmente necesita, y encontrar el movimiento que el asociado junior habría pasado por alto.

    GOAP está más cerca de esa forma que el chat. Es estructuralmente honesto: te dice cuándo no puede alcanzar el objetivo. Presenta la secuencia, no solo la conclusión. Puede inspeccionarse, auditarse, reproducirse.

    Pero 'más cerca que el chat' no es 'suficientemente bueno para el trabajo legal'. El listón no es 'produce un plan'. El listón es 'produce un plan al que un socio firmaría con su nombre'. El GOAP de hoy, el nuestro incluido, está en el primer listón. La próxima versión tiene que llegar al segundo. No creemos que nadie que te venda hoy un planificador — el nuestro incluido — deba merecer confianza en un asunto en curso sin las cuatro puertas anteriores cerradas y demostradas.

    Hacia dónde vamos desde aquí

    • Paso de crítica del objetivo (v0.2). Un pase de Haiku en modo JSON que 'examina este objetivo contra la doctrina; propone una alternativa si está condenado' antes de que se ejecute el planificador.
    • Analizador de objetivos de IA legal (v0.2). Reemplazar la tabla de frases.
    • Replanificación adaptativa (v0.2). Envolver `plan()` en un bucle de ejecución que vuelve a buscar cuando una acción falla. Unas 50 líneas.
    • Biblioteca de acciones legales (v0.3). Delimitada por área de práctica, escrita con revisión de litigantes, predicados parametrizados. Meses de trabajo, y el producto real.

    Cuando esas cuatro cosas sean reales y estén probadas, ejecutaremos los tres casos de litigación anteriores y publicaremos los resultados — incluidos los fallos, incluida la crítica del litigante. Hasta entonces, la única salida honesta es esta: un planificador de ingeniería que funciona, un planificador legal que todavía no existe, y las notas de diseño de lo que el segundo tiene que parecer.

    Lectura relacionada

    • el experimento de enrutamiento de moción de desestimación de 1,67 dólares
    • gobernanza por construcción: eliminar la respuesta incorrecta desde el diseño
    • el estado de la IA legal agéntica
    • un solo prompt frente a diligencia multiagente
    S

    Stephane Boghossian

    Head of Growth

    Recursos relacionados

    JustinianLegal AI ChatSOTA Agentic Legal AISecurity

    Artículos relacionados

    Pusimos a prueba 7 LLM en estrategia de litigio de Nueva York

    Pusimos a prueba 7 LLM en estrategia de litigio de Nueva York

    Prompts de IA para abogados: biblioteca de 168 prompts + guía 2026

    Prompts de IA para abogados: biblioteca de 168 prompts + guía 2026

    Denuncia penal tras un caso laboral en Dubái: qué hacer

    Denuncia penal tras un caso laboral en Dubái: qué hacer

    Preguntas frecuentes

    What is GOAP (goal-oriented action planning)?

    GOAP takes three inputs — a goal state (facts you want true), an initial state, and an action library where each action has preconditions and effects — then runs A* search over action sequences and returns the cheapest valid path from initial to goal. It is not generative; it is search, the same algorithm family GPS uses to route around traffic.

    Can AI plan litigation strategy?

    Structurally it's a better fit than chat — motions, discovery, and trials are sequences of moves under constraints, and litigation has GOAP-shaped preconditions and orderings. But not yet in practice: A* finds shortest paths to losing strategies, and in the article's three test cases the most valuable output would have been 'your goal is wrong; here is the right goal' — which is not what A* does.

    Why isn't an AI planner safe for real legal matters yet?

    Four gates remain open: a real legal action library (200-500 actions with jurisdictional, statutory, calendar, and adversarial preconditions), a goal parser that handles real legal English, self-hosting so nothing touches third-party URLs (privilege), and goal critique — a step that checks the goal against doctrine and refuses doomed objectives before planning starts.

    What legal traps would a naive AI planner fall into?

    The article's three test cases: filing a substantive 12(b)(6) before moving to compel arbitration can waive the right to arbitrate under Morgan v. Sundance (2022); citing the nonexistent 'Labor Code § 16600' instead of Business & Professions Code § 16600; and pursuing California non-compete enforcement that SB 699 and AB 1076 made a losing, sanctionable path when the right move is pivoting to a CUTSA trade-secret theory.

    ¿Qué sigue?

    Prueba HAQQ AI gratis

    Experimenta la redacción e investigación legal con IA

    Calcula tu ROI

    Descubre cuánto tiempo y dinero HAQQ ahorra a tu bufete

    Explora Prompts legales

    Prompts listos para cada tarea legal

    Volver al Blog

    Artículo anterior

    Cuánto cuesta un escrito redactado por IA: 1,67 $ enrutado, 4,55 $ descuidado

    Artículo siguiente

    HAQQ Legal Agent Study: un benchmark de IA legal de largo horizonte

    Ponlo en práctica

    Hazle a HAQQ la pregunta que te dejó este artículo.

    HAQQ across all devices
    HAQQ Legal AI Platform Logo

    Tu Gemelo Legal de IA y Sistema de Gestión de Práctica para redacción, facturación y éxito.

    Download on theApp StoreGet it onGoogle Play

    Documentaciones

    • Docs se abre en una pestaña nueva
    • Primeros pasos se abre en una pestaña nueva
    • Prensa se abre en una pestaña nueva
    • Novedades del producto se abre en una pestaña nueva
    • Estado se abre en una pestaña nueva
    • Seguridad
    • FAQ se abre en una pestaña nueva
    • Comunidad se abre en una pestaña nueva
    • Soporte se abre en una pestaña nueva

    Academy

    • Curso se abre en una pestaña nueva
    • Habilidades se abre en una pestaña nueva
    • Cláusulas se abre en una pestaña nueva
    • Biblioteca de prompts se abre en una pestaña nueva
    • Herramientas se abre en una pestaña nueva
    • Centro de investigación se abre en una pestaña nueva
    • Documentos se abre en una pestaña nueva

    Sitio web

    • eFirm
    • Chat IA Legal
    • Aplicación Móvil
    • Motor Justiniano
    • HAQQ eBar
    • HAQQ eWallet
    • Precios
    • Compáranos
    • Soluciones
    • Blog
    • Conocer equipo
    • Únete a nosotros se abre en una pestaña nueva
    Abrir la app
    • Idiomasar en fr es it de pt
    • Contactoinfo@haqq.ai
    • Estadooperativo·fundamentado
    • Términos de Servicio
    • Política de Privacidad
    • Política de Cookies
    • Procesamiento de Datos se abre en una pestaña nueva
    • humans.txt se abre en una pestaña nuevalawyers.txt se abre en una pestaña nuevasecurity.txt se abre en una pestaña nueva
    © 2026 HAQQ Inc. Todos los derechos reservados.Producto desarrollado internamente por HAQQ. Sitio web construido con herramientas web modernas.

    GOAP Plan Tree

    Goal-Oriented Action Planning expands actions until preconditions are met

    Win MTD
    Establish lack of jurisdiction
    Show statute of limitations
    Find pleading defects
    Pull venue case law
    Compute filing dates
    Cite-check FRCP 12(b)
    Compare to local rules

    Why GOAP Breaks in Litigation

    Unknowable preconditions

    Did opposing counsel waive? You cannot know without asking them.

    Adversarial state changes

    Judge rules mid-plan. The world model is now stale.

    Non-stationary costs

    A motion that was "cheap" yesterday triggers sanctions today.

    Soft goals

    "Win" is not a single goal — it is a moving Pareto front.

    Four Gates Before GOAP Ships

    Each must be true. Today, none are.

    Closed-world facts

    closed

    Stable cost function

    closed

    Verifiable preconditions

    closed

    Single-objective goal

    closed