Webinterface is af en zakt naar B, Eigenimage neemt het over

De opruimronde eerst. Zes vinkjes stonden open terwijl het werk gedaan was: open
punt 5, fase 5, "draaien op de Umbrel", "verifiëren tegen een echte status.json",
en het nakijken van de eerste indeling op een breed scherm, een indeling die na
fase 6 niet meer bestaat. Elk staat nu afgevinkt met de reden erbij, want een
regel wegpoetsen laat de vraag "is dit ooit gebeurd" open.

Ook de regel "Niets" onder Geblokkeerd is geen vinkje meer. Een leeg vakje bij
het woord niets telt mee zodra iemand de openstaande punten telt, en dat is
precies wat die kop moet uitsluiten.

Wat er in Webinterface overblijft is niet te plannen of ligt bij de gebruiker:
een etmaal wachten op het log, waar Nginx Proxy Manager zijn certificaten
neerzet, en of Zoraxy een harde afhankelijkheid wordt. Vandaar tier B.

Eigenimage is daarmee gepromoveerd naar Actief met nummer 006 en tier A, zoals
op 27-08 afgesproken. Het masterplan is omgezet: de drie open beslissingen zijn
naar OPEN.md gegaan, het werk naar TAKEN.md in vier fasen, en PLAN.md houdt het
ontwerp. Het origineel blijft nog even staan; dat verhuist pas naar Archief nu
deze commit er is.

De eerste stap daar is geen bouwtaak maar een vraag: blijft het Gitea-register
ook bij publicatie de bron.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Harmen
2026-08-27 16:42:56 +02:00
co-authored by Claude Opus 5
parent bcf88b62c9
commit 940b2582f9
6 changed files with 333 additions and 21 deletions
+31 -19
View File
@@ -1,12 +1,21 @@
# Taken - Webinterface
> Prioriteit: **A** | Wacht op:
> Prioriteit: **B** | Wacht op:
>
> **Wat hierna komt, besloten door de gebruiker op 27-08-2026: het masterplan Eigenimage.** Dat is geen
> afhankelijkheid maar een volgordekeuze, en de reden staat aan die kant: een eigen image maakt van elke
> wijziging een bouwronde, en dat remt precies het itereren op de pagina dat dit plan nog doet. Rond je dit
> plan af, promoveer **Eigenimage** dan naar `Actief/` met een nieuw tussennummer, en beantwoord eerst open
> punt 1 daar: blijft het Gitea-register ook bij publicatie de bron. **Eigenaar van die vraag: gebruiker**
> **Van A naar B op 27-08-2026, na fase 6.** De pagina is af en goedgekeurd door de gebruiker, op een breed
> scherm én op een telefoon: "helemaal zoals ik het gewild heb". Wat er nog staat is niet te plannen (een
> etmaal wachten op het log) of het is een beslissing van de gebruiker (Nginx Proxy Manager, Zoraxy als
> harde afhankelijkheid). Er is niets meer dat een sessie zelf kan oppakken, en dat is precies wat tier B
> betekent.
>
> **Eigenimage is dezelfde dag gepromoveerd naar `Actief/` en heeft tier A overgenomen**, zoals de
> gebruiker op 27-08-2026 besloot. Beantwoord daar eerst open punt 1: blijft het Gitea-register ook bij
> publicatie de bron. Dit plan houdt zijn nummer 005; alleen het gepromoveerde plan kreeg een nieuw
> tussennummer.
>
> **Bij het opruimen op 27-08-2026 zijn zes vinkjes rechtgezet** die door de gebeurtenissen ingehaald
> waren: open punt 5, fase 5, "draaien op de Umbrel", "verifiëren tegen een echte status.json", en het
> nakijken van de eerste indeling op een breed scherm, een indeling die niet meer bestaat.
>
> **Van C naar B naar A op 20-08-2026, op één dag.** Eerst verviel de blokkade "de app geïnstalleerd en de
> agent draaiend". Aan het eind van die dag is dit het enige plan met werk dat nú te doen is: **Appstore**
@@ -61,8 +70,8 @@ Daarna, en niet eerder:
- [ ] Uitzoeken waar Nginx Proxy Manager op umbrelOS zijn certificaten neerzet. De mount staat
uitgecommentarieerd in `docker-compose.yml`: een gok invullen zou Docker een lege maphierarchie
laten aanmaken in de app-data van een app die er misschien niet eens is
- [ ] Open punt 5: laten controleren of de TLS-poort zélf antwoordt. Dat is nu het enige wat de app niet
over zichzelf weet, en het is zijn enige taak
- [x] **Open punt 5: gebouwd in 0.0.16 en bevestigd op het apparaat** (27-08-2026). Zie fase 6 voor wat de
controle wel en niet bewijst
- [x] **Open punt 6: een certificaat uploaden via de pagina. Gebouwd in 0.0.7** (20-08-2026). Beschrijfbare
mount voor de agent, een eigen nginx-locatie met een grotere limiet, en validatie met
`load_cert_chain` voordat er iets geplaatst wordt. De bestandsnaam komt uit het certificaat zelf,
@@ -70,15 +79,13 @@ Daarna, en niet eerder:
- [ ] Open punt 7: beslissen of Zoraxy een harde afhankelijkheid wordt. "Zoraxy of NPM" kan niet, en dat
is op 20-08-2026 in de bron nagetrokken; alleen de wens staat nog open. Zie [OPEN.md](OPEN.md)
punt 7
- [ ] Fase 5, het activiteitenlog, als de gebruiker het wil
- [x] **Fase 5, het activiteitenlog: gebouwd en uitgerold** in 0.0.6, verfijnd in 0.0.14. Zie de fase zelf
De drie controles op `openssl`, `nc` en de WebDAV-module zijn **vervallen** met de komst van de agent: die
doet dat werk zelf met de standaardbibliotheek. Zie [PLAN.md](PLAN.md) §4a0.
Daarna, in deze volgorde:
- [ ] Fase 2 bouwen op de uitkomst van die controle
- [ ] Fase 5, als de gebruiker de wallet-activiteit wil
Hier stonden nog twee regels die naar fase 2 en fase 5 vooruitwezen. Allebei **vervallen op 27-08-2026 bij
het opruimen**: die fasen zijn af, en een vooruitwijzing naar afgerond werk leest als openstaand werk.
## Fase 1 - Het liegen eruit
@@ -110,7 +117,7 @@ shell-lus in de compose. Onderbouwing in [PLAN.md](PLAN.md) §4a0.
staat. Zie [PLAN.md](PLAN.md) §4c: liever minder informatief dan onwaar
- [x] De lus valt nooit stil: een mislukte ronde wordt gelogd en overgeslagen. Stoppen zou de pagina op
oude gegevens bevriezen, en dat is precies het liegen dat dit plan moest afschaffen
- [ ] Draaien op de Umbrel. Niets hiervan is buiten de tests uitgevoerd
- [x] **Draait op de Umbrel sinds 20-08-2026.** Deze regel stond er nog van vóór de installatie
## Fase 3 - De pagina vult zichzelf
@@ -122,7 +129,8 @@ shell-lus in de compose. Onderbouwing in [PLAN.md](PLAN.md) §4a0.
wat er al onder de blokhoogte, in de badge bij de Electrum-server en in de voettekst stond
- [x] Leesbare melding als het bestand ontbreekt, zonder dat het op een fout lijkt.
Zie [OPEN.md](OPEN.md) punt 1
- [ ] Verifiëren tegen een échte `status.json` in plaats van tegen de voorbeeldversie uit de preview
- [x] **Geverifieerd tegen een échte `status.json`** sinds de app draait (20-08-2026), en sindsdien bij
elke release opnieuw
## Fase 4a - De indeling
@@ -161,8 +169,8 @@ Vastgesteld door de gebruiker op 19-08-2026 na het bekijken van de eerste versie
- [x] **Het losse verbindingsadres met kopieerknop eruit**, plus het label "tested clients". Zonder
verlies: hetzelfde adres staat bij elke clientregel, in de vorm die díe client wil, met een
kopieerknop erbij. Het instelkader werd daarmee 533px in plaats van 610px
- [ ] Nog niet met eigen ogen gezien op een echt breed scherm; gecontroleerd via de afmetingen van de
kaders, niet visueel, want het browserpaneel stond dicht
- [x] **Vervallen: deze indeling bestaat niet meer.** De regel ging over het nakijken van fase 4a op een
breed scherm, en fase 6 heeft die indeling op 27-08-2026 vervangen. Wat er nagekeken is, staat daar
## Fase 4 - Bruikbaar in plaats van alleen eerlijk
@@ -175,7 +183,8 @@ Vastgesteld door de gebruiker op 19-08-2026 na het bekijken van de eerste versie
terugval met `execCommand` is daar het pad dat gebruikt wordt en niet de uitzondering. Wat op
19-08-2026 lokaal wél bewezen is: de **faalroute** meldt "Press Ctrl+C" in plaats van stil niets te
doen. De geslaagde route vraagt een echte muisklik, want de clipboard-API weigert een klik die uit
een script komt
een script komt. **Sinds 0.0.17 zijn het er twee in plaats van tien**, allebei in het dichtgeklapte
instelkader, dus het is één klik om te proberen. **Eigenaar: gebruiker**
## Fase 4b - De certificaatkeuze
@@ -292,4 +301,7 @@ de vijfde widget; de rest is de pagina verbouwen om wat er dan staat.
## Geblokkeerd / wacht op
- [ ] Niets. De afhankelijkheid van **Configuratie** is vervallen, zie [PLAN.md](PLAN.md)
Niets. De afhankelijkheid van **Configuratie** is vervallen, zie [PLAN.md](PLAN.md).
Als platte regel en niet als vinkje (opgeruimd 27-08-2026): een leeg vakje bij het woord "niets" telt mee
als openstaand werk zodra iemand de vinkjes telt, en dat is precies wat deze kop moet uitsluiten.