Files
task-stream/docs
Josep Piguillem c2928d2385 feat: several Git repositories per project
A project keeps a list of repositories (api, web, admin…), each with its
own secret, instead of a single webhook secret. They all call the same
URL; the secret that verifies the signature tells which one it was, and
every commit, branch or pull request is linked with its repository's
name (shown on the ticket and in the MCP). Rotating or removing one
leaves the others alone, and what it linked stays.

A project that had turned the single webhook on keeps its secret, as a
repository named "principal".

API: the enable/disable endpoints and mutations give way to adding a
repository, rotating its secret and removing it (REST and GraphQL). The
web settings card lists the repositories. Docs, Word and PDF updated.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 10:39:59 +02:00
..
2026-10-08 19:20:28 +02:00
2026-10-08 18:47:30 +02:00

Documentación de TaskStream

TaskStream es una alternativa a Jira para equipos de desarrollo: proyectos, tickets (bugs, features, cambios de UI, tareas, QA), releases, comentarios y relaciones entre tickets, todo en tiempo real.

Documento Para qué
1. Visión general Qué hace el producto, stack y estructura del monorepo
2. Arquitectura Hexagonal, CQRS, event sourcing, flujo escritura → lectura y tiempo real
3. API Dominio (agregados, workflow, eventos) y la API GraphQL
4. Cliente web Angular, NgRx Signals con eventos, GraphQL y @pi/ui
5. Autenticación Pireon: tokens, login en el navegador, sesiones y webhooks
6. Desarrollo Puesta en marcha, comandos, tests y cómo añadir una funcionalidad
7. Despliegue Docker, variables de entorno y escalado
8. Decisiones Por qué está hecho así (y qué alternativas se descartaron)
9. Servidor MCP Usar TaskStream desde asistentes de IA (Claude…): herramientas y conexión

Cada librería de libs/ tiene además su propio README.md con su responsabilidad y su contenido.

Empezar rápido

docker compose up -d --build     # web en http://localhost:8080

Para entrar hacen falta dos clientes OAuth de Pireon en .env (authorization_code y password, ver Autenticación).