Document zero-restart UI dev workflow in AGENTS.md

Add "Local UI Development" section with instructions for using the
docker-compose.dev-ui.yml override. Agents working on UI changes
should use this to avoid the slow volume-copy + restart cycle.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
master
2026-03-29 00:55:17 +02:00
parent 39e1bf0bd4
commit c7cd5234bc

View File

@@ -27,9 +27,36 @@ Design and build the StellaOps web user experience that surfaces backend capabil
- Branding uses Authority `/console/branding` and applies only whitelisted CSS variables.
## Key Paths
- `src/Web/StellaOps.Web` ??? Angular workspace (to be scaffolded).
- `docs/` ??? UX specs and mockups (to be added).
- `ops/` ??? Web deployment manifests for air-gapped environments (future).
- `src/Web/StellaOps.Web` Angular workspace.
- `docs/` UX specs and mockups.
- `devops/compose/docker-compose.dev-ui.yml` — Dev override for zero-restart UI development.
## Local UI Development (IMPORTANT)
For UI work against the Docker stack, **use the dev-ui compose override** to avoid
restarting the gateway container after every build:
```bash
# One-time: apply the override (bind-mounts dist/ into the gateway)
cd devops/compose
docker compose -f docker-compose.stella-ops.yml -f docker-compose.dev-ui.yml up -d router-gateway
# Build (output goes directly to gateway's wwwroot — no copy, no restart)
cd src/Web/StellaOps.Web
npx ng build --configuration=development
# Or use watch mode for continuous rebuilds:
npx ng build --configuration=development --watch
```
After build, just **refresh the browser** — the gateway serves the new files immediately.
**Without the override**, you must copy files into the Docker volume and restart:
```bash
docker run --rm -v compose_console-dist:/output -v "...browser:/src:ro" alpine cp -a /src/. /output/
docker restart stellaops-router-gateway
```
This is slow and should only be used for CI/production builds.
## Reachability Drift UI (Sprint 3600)