/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>
web-tracker-application
Estado del tracker (NgRx Signals con eventos) detrás de facades.
- Import:
@task-stream/web/tracker/application - Capa:
application· Tags:scope:web-tracker,type:application
Contenido
- Facades (lo que se exporta):
ProjectsFacadeyHomeFacade(«Mi trabajo») (raíz) yProjectFacade,BoardFacade,IssueFacade(de ruta, conprovideProjectFacade(),provideBoardFacade(),provideIssueFacade()). Tests enfacades/facades.spec.ts. ExploreFacade(raíz): proyectos públicos, también sin sesión.ProjectFacadetambién da la visibilidad (setPublic) y el borrado (deleteProject, vuelve a la portada; y si otro lo borra, también), y la configuración del proyecto (workflow,saveSettings) y sus estadísticas (loadAnalytics,loadBurnup).- Interno: stores
ProjectsStore,ProjectStore,HomeStore,BoardStore,IssueStorey eventos por origen (*PageEvents,*ApiEvents,*RealtimeEvents). board.reducers.ts: transformaciones puras del tablero (movimiento optimista, cambios en vivo por versión).- Puerto
Notifications.
Patrón de eventos: Cliente web.
Comandos
npx nx lint web-tracker-application
npx nx test web-tracker-application # Vitest
Reglas de dependencia entre capas: Arquitectura.