chore(komodo): park-lab posts review crops as booth-lab; collector lists its token
Build & push images / images (push) Successful in 2m48s
Build & push images / images (push) Successful in 2m48s
Own pseudonymous id and own secret (wash_review_token_booth_lab), never a real booth's, so bench crops stay separable per booth on the collector and can be labelled unusable. Fleet page row updated. Claude-Session: https://claude.ai/code/session_01FWncR69HgGPuei1dLrW3cU
This commit is contained in:
+10
-5
@@ -123,8 +123,8 @@ BACKUP_KEY=[[park_2_backup_key]]
|
|||||||
# Stack — the LAB BENCH (not a booth): a spare Linux box with the field printer and
|
# Stack — the LAB BENCH (not a booth): a spare Linux box with the field printer and
|
||||||
# whatever device is under investigation, so a booth bug can be reproduced on the booth's
|
# whatever device is under investigation, so a booth bug can be reproduced on the booth's
|
||||||
# exact image before touching a real site. Same compose files + pinned TAG as the staging
|
# exact image before touching a real site. Same compose files + pinned TAG as the staging
|
||||||
# booths. No review outbox (the lab is not a site — it must never feed the training pool
|
# booths. Review outbox under its OWN id (booth-lab) — never a
|
||||||
# under a booth's identity). Its own secrets. See wiki/decisions/fleet-deployment-komodo.md.
|
# booth's identity, so bench crops stay separable on the collector. Its own secrets. See wiki/decisions/fleet-deployment-komodo.md.
|
||||||
##############################################################################
|
##############################################################################
|
||||||
|
|
||||||
[[stack]]
|
[[stack]]
|
||||||
@@ -149,8 +149,13 @@ TAG=stage-88f9c53
|
|||||||
COOKIE_SECURE=0
|
COOKIE_SECURE=0
|
||||||
# Entitled to Car Wash too, so the wash-desk printer role and till can be exercised on the bench.
|
# Entitled to Car Wash too, so the wash-desk printer role and till can be exercised on the bench.
|
||||||
MODULES_ENTITLED=parking,carwash
|
MODULES_ENTITLED=parking,carwash
|
||||||
# NO review outbox on the lab (CARWASH_REVIEW_URL/BOOTH_ID/TOKEN deliberately unset): the
|
# Review outbox ON for the bench too, under its OWN pseudonymous id (booth-lab) and its own
|
||||||
# collector's training pool is per-booth, and the bench is not a booth.
|
# secret — never a real booth's — so lab crops are separable on the collector (per-booth stats,
|
||||||
|
# the export's booth column) and the reviewer can label bench junk "unusable".
|
||||||
|
CARWASH_REVIEW_URL=http://docker-station.nb.infra:8090/ingest
|
||||||
|
CARWASH_REVIEW_BOOTH_ID=booth-lab
|
||||||
|
CARWASH_REVIEW_TOKEN=[[wash_review_token_booth_lab]]
|
||||||
|
CARWASH_REVIEW_ENTRY_SAMPLE=1
|
||||||
VISION_ENABLED=1
|
VISION_ENABLED=1
|
||||||
# Desktop app WS handshake: Origin is tauri://localhost (set explicitly by
|
# Desktop app WS handshake: Origin is tauri://localhost (set explicitly by
|
||||||
# platform-ws.ts, since the native WS plugin has no page context to auto-attach
|
# platform-ws.ts, since the native WS plugin has no page context to auto-attach
|
||||||
@@ -193,7 +198,7 @@ COLLECTOR_BIND=100.75.184.156
|
|||||||
# that booth's own stack as its CARWASH_REVIEW_TOKEN — one value, two consumers, nothing
|
# that booth's own stack as its CARWASH_REVIEW_TOKEN — one value, two consumers, nothing
|
||||||
# to keep in sync, and rotating a booth touches one secret. The booth id is the booth's
|
# to keep in sync, and rotating a booth touches one secret. The booth id is the booth's
|
||||||
# pseudonymous CARWASH_REVIEW_BOOTH_ID, never a site name. Add a pair per booth.
|
# pseudonymous CARWASH_REVIEW_BOOTH_ID, never a site name. Add a pair per booth.
|
||||||
COLLECTOR_BOOTH_TOKENS=booth-2:[[wash_review_token_booth_2]],booth-1:[[wash_review_token_booth_buzi]]
|
COLLECTOR_BOOTH_TOKENS=booth-2:[[wash_review_token_booth_2]],booth-1:[[wash_review_token_booth_buzi]],booth-lab:[[wash_review_token_booth_lab]]
|
||||||
# Phase-B trainer (the `trainer` service beside the collector; the Training section of /review
|
# Phase-B trainer (the `trainer` service beside the collector; the Training section of /review
|
||||||
# is its UI). Only `publish` needs this: a Gitea token with package:write for the model's generic
|
# is its UI). Only `publish` needs this: a Gitea token with package:write for the model's generic
|
||||||
# package. Uncomment when the first model is to be published.
|
# package. Uncomment when the first model is to be published.
|
||||||
|
|||||||
@@ -198,7 +198,7 @@ Second `[[stack]]` in `komodo/resources.toml`: **`park-lab`** (server = the lab
|
|||||||
|
|
||||||
| Stack | compose branch | image tag | secrets |
|
| Stack | compose branch | image tag | secrets |
|
||||||
| --- | --- | --- | --- |
|
| --- | --- | --- | --- |
|
||||||
| park-lab | `dev` → **`stage` (2026-09-09)** | ~~moving `dev`~~ → **pinned to the booth's `stage-<sha>` under reproduction** (2026-09-09: the lab re-joined the fleet to reproduce the park-buzi printer cover-open bug, so it must run the booth's exact image; **no review outbox** — the bench is not a booth and must never feed the collector under a booth id) | `park_lab_*` |
|
| park-lab | `dev` → **`stage` (2026-09-09)** | ~~moving `dev`~~ → **pinned to the booth's `stage-<sha>` under reproduction** (2026-09-09: the lab re-joined the fleet to reproduce the park-buzi printer cover-open bug, so it must run the booth's exact image; review outbox under its **own** id `booth-lab` since 2026-09-16 — never a booth's, so bench crops stay separable per booth on the collector) | `park_lab_*` |
|
||||||
| park-buzi | `stage` | pinned `stage-<sha>` | `park_buzi_*` |
|
| park-buzi | `stage` | pinned `stage-<sha>` | `park_buzi_*` |
|
||||||
|
|
||||||
The three knobs are independent per stack — the ResourceSync's own branch only governs where the
|
The three knobs are independent per stack — the ResourceSync's own branch only governs where the
|
||||||
|
|||||||
Reference in New Issue
Block a user