Some checks are pending
offline / test (push) Waiting to run
Docs match current modules: public portal is access-web /portal/, IAM and keep are listed, edge is loopback. Bootstrap clones every Forgejo repo and installs deps per server type. Fleet starts IAM and staff-session. NS1 all-in-one uses edge :13000 because :3000 is taken; archive workers stay with keep.
127 lines
3.6 KiB
Markdown
127 lines
3.6 KiB
Markdown
# UI walkthrough (operator, staff, customers)
|
|
|
|
Captured 2026-09-11. Browser console: no application errors on the product UIs (favicon data-URI). Design tokens: `--accent #4f46e5`, `--bg #f4f5fb`, 12px radius, indigo header.
|
|
|
|
## 1. Operator console — Fleet
|
|
|
|
Open **http://127.0.0.1:3850/**.
|
|
|
|

|
|
|
|
1. Header kicker reads **operator LAN · binds 0.0.0.0:3850**. NATS stays private.
|
|
2. **Add machine:** pick roles as chips (`tree-node`, `archive-worm`, …), then **Add machine**.
|
|
3. Machine cards show role pills and enable/disable.
|
|
4. Services: **Health** is operational/degraded. **Power** is a status (`on` / `paused` / `off`), not a toggle.
|
|
5. Click **⋯** on a replica or on Power for pause / resume / restart / start / stop.
|
|
|
|

|
|
|
|
## 2. Trace
|
|
|
|
Click **Trace**.
|
|
|
|

|
|
|
|
1. Pick an action (default Create Timestamp and Wait).
|
|
2. Orange **Faults** box is inject-only.
|
|
3. **Run step**. Hops wrap; module names are not clipped.
|
|
|
|

|
|
|
|
## 3. Docs
|
|
|
|
Click **Docs**. Cards match Fleet. High-level first.
|
|
|
|

|
|
|
|
## 4. Standalone simulator
|
|
|
|
Open **http://127.0.0.1:3847/**. Same indigo shell. Orange only on **Inject faults**.
|
|
|
|

|
|
|
|
**Run step** or a scenario (Register, Batch Merkle, …).
|
|
|
|

|
|
|
|
## 5. Customer service
|
|
|
|
Open **http://127.0.0.1:3011/**.
|
|
|
|
1. Customer id → **Review account**. Prepaid is dollars.
|
|
2. **Amount (USD)** → **Apply credit**. Table lists `$5.00`, reason, agent name, when.
|
|
|
|

|
|
|
|

|
|
|
|
## 6. Sales
|
|
|
|
**http://127.0.0.1:3012/** — **Review account** or **Show quote** (named fields, not a JSON dump).
|
|
|
|

|
|
|
|
## 7. Accounting
|
|
|
|
**http://127.0.0.1:3013/** — review plus **QuickBooks IIF** / **CSV**.
|
|
|
|

|
|
|
|
## 8. Staff access plane
|
|
|
|
**http://127.0.0.1:3025/** — same review/credit UI after `verae.access.authz.check`.
|
|
|
|

|
|
|
|
## 9. Admin
|
|
|
|
**http://127.0.0.1:3000/admin/**
|
|
|
|
| Username | Password |
|
|
|----------|----------|
|
|
| `admin` | `admin-dev-key` |
|
|
| `demo` | `$$$Adm1n###` |
|
|
|
|

|
|
|
|

|
|
|
|
**Customers** is a read-only list. **Edit** opens a drawer (email, type, multiplier, billing).
|
|
|
|

|
|
|
|

|
|
|
|
Invoices empty state until you **Generate** a period.
|
|
|
|

|
|
|
|
## 10. Customer portal
|
|
|
|
**http://127.0.0.1:3021/portal/** — public customer door (access-web). Loopback edge still has `/portal` on `:3000`. Create an account or sign in.
|
|
|
|

|
|
|
|
Dashboard: API key is **masked**. **Reveal**, **Copy** (full key to clipboard), **Regenerate**.
|
|
|
|

|
|
|
|

|
|
|
|

|
|
|
|
**API & pricing** notes that `/docs` is stock Swagger.
|
|
|
|

|
|
|
|
## 11. Swagger (not a customer surface)
|
|
|
|
**http://127.0.0.1:3000/docs** — vendor Swagger UI for integrators.
|
|
|
|

|
|
|
|
## 12. Catalog
|
|
|
|
**https://zapier.georgelambert.org/** — system-ui on the indigo header (not Georgia).
|
|
|
|

|