Files
UmbrelApps/Docs/Plannen/Actief/007-Proefopstelling/TAKEN.md
T
HarmenandClaude Opus 5 1a87a45685 De bovenstroomse repo gelezen, en twee aannames sneuvelden
De gebruiker wil de Evolu Relay-app meteen pakketteren. Daarvoor moest fase 1 van
Proefopstelling eerst af, want een compose schrijven op aannames is precies wat
dat plan moet voorkomen. Upstream-evolu-relay.md gaat daarmee van vooronderzoek
naar nagetrokken, met een bron-URL per feit.

De quota-manager is in de praktijk verplicht, en om een andere reden dan gedacht.
Niet omdat de relay hem aanroept: er is geen HTTP-koppeling en geen URL in de
configuratie, ze delen alleen de Postgres. Maar isOwnerAllowed() eist een rij in
de limietentabel en de quota-manager maakt die rijen. Zonder hem is de relay dus
niet open maar dicht voor iedereen. Dat maakt de tweede weg interessant, want een
rij is ook met de hand te zetten; de prijs daarvan is schrijven in andermans
schema.

Er is geen publieke image. Trezor bouwt er wel een maar duwt hem naar een eigen
Amazon ECR, en op Docker Hub staat niets. Zelf bouwen en publiceren, of geen app,
en dat is een doorlopende verplichting. Bijvangst die een risico wegneemt:
datzelfde werkproces bouwt amd64 en arm64, dus de Dockerfile is bovenstrooms
bewezen op een Pi. Nieuw risico dat ervoor terugkomt: LICENSE.md is door GitHub
geclassificeerd als "other", en zodra je een image publiceert distribueer je hun
software.

Twee kleinere correcties. De compose van Trezor draait de relay niet, er staan
alleen Postgres en Prometheus in; het is een ontwikkelopstelling en wat zij
uitrollen staat in .k8s/. En alle processen komen uit één image met per service
een ander command, dus het worden geen drie images.

Eén tegenspraak blijft staan en is expres niet weggeschreven als feit:
.env.sample zegt dat SERVER_ENV=prod authenticatie aanzet, maar in de code die ik
las bepaalt die vlag alleen het logniveau en staan de controles onvoorwaardelijk
aan. Eén van de twee is achterhaald. Dat is met één keer starten te meten en het
staat als taak in fase 2.

Tests: niet gedraaid, dit raakt alleen documentatie.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 16:57:39 +02:00

4.9 KiB

Taken - Proefopstelling

Prioriteit: A | Afhankelijk van: -

Actief sinds 25-08-2026, bij het inrichten van dit project. Dit is het enige plan met een tier: de drie masterplannen wachten allemaal op de uitkomst hiervan.

Volgende stap

  • Controleren of Trezor Suite een eigen sync-server accepteert, en op welk platform. Dit is de goedkoopste weerlegging van het hele project en het kost een minuut in de interface. Noteer waar het veld staat, hoe het adres eruit moet zien (met of zonder schema, met of zonder poort), en of het alleen op desktop bestaat. Eigenaar: gebruiker

Fase 1 - Kan dit überhaupt

  • Het veld voor een eigen sync-server in Trezor Suite gevonden, met de vorm die het verwacht
  • .env.sample, docker-compose.yaml, Dockerfile, README.md en de relay-broncode gelezen (25-08-2026). Dat leverde meer op dan de vraag stelde en het staat met bron per feit in Upstream-evolu-relay.md. De drie uitkomsten die het pakket bepalen: (a) de quota-manager is in de praktijk verplicht - de relay weigert elke eigenaar die geen rij in de limietentabel heeft, en de quota-manager maakt die rijen. Er is geen HTTP-koppeling tussen de twee, ze delen alleen de Postgres, dus de tabel gevuld krijgen is wat telt en niet de dienst zelf; (b) er is geen publieke image - Trezor duwt naar een eigen Amazon ECR. Zelf bouwen en publiceren, of geen app; (c) alle processen komen uit één image met per service een ander command, dus geen drie images
  • Vastgesteld dat Trezor geen image publiceert (25-08-2026). Zie hierboven. Bijvangst die een risico wegneemt: hun eigen werkproces bouwt linux/amd64 én linux/arm64, dus de Dockerfile is bovenstrooms bewezen op arm64
  • De compose van Trezor draait de relay niet (25-08-2026), tegen wat het vooronderzoek aannam. Er staan alleen Postgres en Prometheus in; het is een ontwikkelopstelling. Wat Trezor zelf uitrolt staat in .k8s/
  • Uitzoeken hoe je een eigenaar bij de quota-manager registreert, en of daar iets extern voor nodig is. Dit is nu de vraag die bepaalt of dit een bruikbare app wordt. Begin bij bruno-collection/ in de repo; de README verwijst voor de API-spec naar Notion
  • Uitzoeken wat SERVER_ENV=prod doet dat dev niet doet. .env.sample zegt dat prod authenticatie aanzet, maar in de code die ik las bepaalt die vlag alleen het logniveau en staan de controles onvoorwaardelijk aan. Niet aannemen dat dev de deur opent, en ook niet dat hij dicht is

Fase 2 - De stack lokaal draaien

  • trezor/trezor-suite-sync gekloond
  • Postgres uit de compose van Trezor gestart, en de relay ernaast met yarn start-evolu-relay of uit een zelfgebouwde image. Niet "docker compose up en klaar": die compose draait de relay niet
  • De relay antwoordt op poort 4000 en blijft draaien. Blijft hij niet draaien, dan is de foutmelding de bevinding: schrijf hem letterlijk op in PROGRESS.md
  • Gemeten wat er gebeurt bij een eigenaar zónder limietenrij, in dev én in prod. Dat beslecht de tegenspraak uit fase 1 in één keer
  • Blocker-check: is de relay hard afhankelijk van de quota-manager? Zo ja, die erbij en uitzoeken wat hij zelf nodig heeft. Vraagt hij een externe dienst, dan is dat geen taak meer maar open punt 4 in OPEN.md

Fase 3 - Echt synchroniseren

  • Trezor Suite op apparaat A naar http://<ip-van-de-machine>:4000 laten wijzen
  • Een label toevoegen op apparaat A
  • Datzelfde label zien verschijnen op apparaat B. Dit is de enige controle die telt; de twee hierboven kunnen slagen terwijl er niets gesynchroniseerd wordt
  • Geprobeerd wat er gebeurt als de relay even weg is en terugkomt. Niet omdat het nu moet werken, maar omdat het gedrag straks op een Umbrel bij elke update voorkomt

Fase 4 - Vastleggen wat het pakket moet worden

  • Per container opgeschreven: image en herkomst, poorten, volumes, en de variabelen die echt nodig bleken. Niet de hele .env.sample overnemen
  • Opgeschreven hoe Trezor Suite zich tegen de relay authenticeert, of dat het helemaal niet doet. Dit bepaalt of de app achter de inlog van umbrelOS kan staan; zie het masterplan Umbrelapp, §4b
  • Opgeschreven of Suite een http://-adres accepteert of TLS eist. Hier hangt het masterplan Bereikbaarheid aan
  • Upstream-evolu-relay.md bijgewerkt: alles wat daar als "onderzocht 25-08-2026" staat en nu bevestigd of weerlegd is, met de nieuwe datum erbij
  • Het masterplan Umbrelapp herzien met wat hier uitkwam, en pas daarna promoveren

Geblokkeerd / wacht op

  • Fase 3 wacht op een tweede apparaat met Trezor Suite. Zie OPEN.md punt 3