La Total Reciprocity Public License (TRPL) v1.0 es una licencia de software copyleft publicada en noviembre de 2025 que busca cerrar los vacíos legales que las licencias de código abierto tradicionales no cubren en la era de las API en la nube y la inteligencia artificial. Se trata de una licencia experimental y agresiva que trata las interacciones mediante API y la salida funcional —como el código generado o los pesos de modelos de IA— como obras derivadas del programa original.
Qué es y por qué importa: TRPL está pensada para desarrolladores que quieren que su código permanezca libre incluso cuando se integra en arquitecturas propietarias. Frente a la permisividad de MIT o Apache, y a la cobertura limitada de la AGPL —que solo obliga a divulgar el código del propio programa cuando se ofrece como servicio de red—, TRPL va más lejos: cualquier software privativo que se comunique con un programa TRPL a través de API, microservicios, RPC o memoria compartida se considera parte de una "obra combinada" y debe publicarse bajo la misma licencia. Aislar el programa en un contenedor o microservicio aparte no exime de esta obligación si los servicios están acoplados funcionalmente.
Cómo funciona: la licencia introduce dos conceptos clave. La "comunicación íntima" (Intimate Communication) abarca cualquier intercambio de datos, señales de control o lógica entre el programa y otra obra orientado a un objetivo funcional unificado, incluyendo REST, GraphQL, comunicación entre procesos y llamadas a bibliotecas. La "salida funcional" (Functional Output) se refiere a resultados ejecutables como código fuente, código objeto, pesos de modelos de IA, esquemas de bases de datos y scripts lógicos. Estas salidas se consideran obras derivadas y deben licenciarse bajo TRPL o una licencia de software libre compatible.
Casos de uso y excepciones: la licencia distingue entre salida funcional y salida de contenido. La música, el arte, las novelas, los documentos de texto y las hojas de cálculo creados con herramientas TRPL siguen siendo propiedad del usuario, siempre que no incrusten partes del código fuente del programa necesarias para su ejecución. En el ámbito de la IA, TRPL exige que cualquier modelo entrenado con código TRPL publique su arquitectura, datos de entrenamiento (o recetas detalladas para reproducirlos) y pesos finales, clasificados como salida funcional. La lógica de inferencia que dependa del programa no puede mantenerse propietaria, aunque los medios generados por el modelo pertenecen al usuario.
Consideraciones: TRPL no es compatible con la definición de código abierto de la OSI, ya que añade restricciones de uso y amplía el concepto de "enlace" más allá de las interpretaciones estándar. La venta de software TRPL está permitida, siempre que se entregue el código fuente completo y no se restrinja su redistribución. Su validez jurídica no ha sido probada en tribunales y su adopción puede verse limitada por la incompatibilidad con licencias permisivas y con la mayoría de copyleft existentes.
