The owner archives a finished project (archiveProject, POST
/projects/{project}/archive) and brings it back (unarchive). While
archived it stays readable, managers still read its rules and webhooks,
but no command changes it: contributing and managing checks refuse with
422, votes and public proposals too, and automations do not run. The web
shows a read-only notice on every page of it (with «Desarchivar» for the
owner), hides what edits, marks it on the home page and lists it last.
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.