/cartera (and GraphQL portfolio, REST /api/me/portfolio, MCP get_portfolio) shows every active project I belong to (not archived, not as a guest) at a glance: open, overdue, blocked and stuck tickets, the sprint under way and whether it gets there, planned releases with their forecast, and the open epics with their progress. It reuses the dashboard's computations. A release with no tickets now reads «Sin tickets» instead of «Todo hecho», here and on the dashboard. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
api-tracker-presenters
API GraphQL y REST (OpenAPI) del tracker.
- Import:
@task-stream/api/tracker/presenters - Capa:
presenters· Tags:scope:api-tracker,type:presenters
Contenido
- Resolvers
ProjectResolver,IssueResolver,CommentResolver,ReleaseResolverySubscriptionResolver; solo llaman a services. - Tipos, inputs (con
class-validator) y enums de GraphQL (code-first). http/: controladores RESTProjectsController,IssuesController,CommentsController,ReleasesController(mismos services), DTOs con@nestjs/swaggeryRefs(proyectos y tickets por id o clave; añade a cada ticket sus transiciones permitidas según el workflow de su proyecto).ExploreController(GET /api/explore/projects, sin token). Las lecturas usan@OptionalAuth()yviewerOf(me)(null = anónimo) para servir proyectos públicos sin sesión.common/settings.ts: configuración del proyecto con las transiciones como lista (lo que viaja por GraphQL y REST).
Operaciones disponibles: GraphQL y REST.
Comandos
npx nx lint api-tracker-presenters
npx nx test api-tracker-presenters # Jest
Reglas de dependencia entre capas: Arquitectura.