Vijf widgets op de bovenste rij, de certificaatkeuze in een dialoog achter een
puntjesmenu, het activiteitenlog vol breed, en het instelkader dichtgeklapt met
twee kopieerknoppen. Uitgeleverd als 0.0.17. De zelfcontrole uit 0.0.16 heeft
daarmee eindelijk een plek om te verschijnen.
Wat opvalt is wat er verdween. Twee mechanismen bestonden alleen omdat er kaders
naast elkaar stonden: het meerekken van de tegels met de hoogte van hun buur, en
het samen groeien en krimpen van log en certificaatkader. Dat tweede was de hele
inhoud van 0.0.13. Vijf gelijke widgets en een vol breed log hebben geen buur,
dus beide zijn weg, samen met .col-5 en .col-7.
De harde eis staat in de code en niet alleen in het plan: de foutmelding "geen
certificaat in gebruik" heeft de knop die de dialoog opent. Een verse installatie
heeft geen certificaat en de pagina is de enige plek waar je er een kiest; dat
achter een menu verstoppen zou de klem van 0.0.3 in een andere vorm zijn.
Twee dingen onderweg bijgestuurd. Het menu werd drie punten in plaats van een
hamburger, op aanwijzing van de gebruiker, want dat is wat umbrelOS bij zijn
eigen apps toont. En het ontwerp beweerde dat de certificaatlijst een lijst was,
terwijl die op 20-08 al een dropdown geworden is; dat is rechtgezet in 4a2 en de
dropdown is ongewijzigd meeverhuisd.
Niet geverifieerd: niets hiervan is in een browser gezien, op geen enkele
schermbreedte. Dat staat als taak met de gebruiker als eigenaar.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Open punt 5 van Webinterface, goedgekeurd en gebouwd. De agent verbindt met de
eigen TLS-poort, maakt de handdruk af en vergelijkt het getoonde certificaat
byte voor byte met het gekozen bestand.
Die vergelijking blijkt waardevoller dan de handdruk. Ze vangt een
certificaatwissel die nginx nooit heeft toegepast, en dat is precies het geval
waar een controle op vertrouwen blind voor is. Er wordt daarom bewust niet tegen
de certificaatwinkel van het besturingssysteem geverifieerd: een zelfondertekend
certificaat uploaden is een ondersteunde bron en die opstelling zou dan als kapot
gemeld worden.
Twee dingen liepen anders dan het plan zei en staan nu rechtgezet in PLAN 4a2,
OPEN punt 5 en de changelog. De belofte "luisteren, certificaat en doorverbinding
in een keer" klopt voor twee van de drie: na de handdruk wordt er niets
verstuurd. Een echt verzoek zou de sessie bytes geven, en sessies met bytes
worden nooit uit het activiteitenlog gefilterd, want die kunnen een storing zijn.
En dat filteren was de tweede verrassing. Elke meting is voor nginx een gewone
sessie en levert dus een logregel op; zonder rem ging het log over onszelf in
plaats van over wallets. Er zit nu een rem van vijf minuten op, er wordt niet
gemeten vlak na een herlading omdat het vorige certificaat er dan nog staat, en
de eigen regels worden weggelaten op grond van het moment.
Tests: 22 nieuw, met de nadruk op de niet-gelukkige paden en op de rem, want dat
is wat het log bruikbaar houdt. Alle vier de beslissende regels mutatie-getest.
De changelog kreeg ook de ontbrekende 0.0.15 erbij.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
umbrelOS leest per store één repo, dus twee apps in twee repo's kan niet. Deze
repo is de store en bevat vanaf nu Electrum Gate en het werk aan Evolu Relay.
Opgezet als verse repo op verzoek van de gebruiker: de historie van ElectrumTLS
en van EvoluRelay komt niet mee.
Dat heeft één gevolg dat verder gaat dan opruimen. In de historie van
ElectrumTLS staat het domein van de gebruiker en het certificaatpad, van vóór de
opschoning van 19-08. Die komt hier niet in. Zolang die repo op de Git-server
blijft staan verandert dat niets, dus het weghalen ervan is het laatste stuk van
open punt 3 van het plan Appstore, en geen bijzaak.
De store zelf hoefde niet te veranderen: store-id whatsnext, en dus blijft het
app-id whatsnext-electrum-gate. Dat hangt aan het store-id en niet aan de URL,
dus voor umbrelOS is dit dezelfde app in een andere store. Dat de store op 19-08
naar de maker genoemd werd in plaats van naar deze ene app, betaalt zich hier
uit.
Wat de documentatie betreft is dit één wortel voor beide apps, en dat was de
reden om samen te voegen en niet de prijs ervan: de appstore-spec, het pinnen
van images en de werkwijze golden al voor allebei en stonden in twee repo's naast
elkaar. De kruisverwijzing die daarvoor nodig was (Referenties/Umbrel-appstore.md
in de oude EvoluRelay-repo) is verdwenen; wat daarin stond over de plekken waar
de relay een ander geval is, staat nu als ontwerp in het masterplan Umbrelapp §4.
Botsende namen kregen een achtervoegsel met de app, en alleen die: Publicatie
werd Publicatie-Gate en Publicatie-Relay, CHANGELOG.md werd
CHANGELOG-electrum-gate.md. Proefopstelling kreeg 007, tussen de twee bestaande
nummers, zodat de bovenkant van de reeks op tier-orde blijft staan.
CONTINUE_HERE.md heeft een kolom App, maar de tiers lopen over beide apps heen:
er is één volgorde van werken.
Electrum Gate gaat naar 0.0.15, want website, repo, support, submission en icon
wijzen nu naar UmbrelApps en zonder versieverhoging rolt dat niet uit. De release
notes leggen aan de gebruiker uit dat hij de store opnieuw moet toevoegen. Of een
geïnstalleerde app een wisseling van store-URL overleeft is nog steeds niet
uitgezocht; dat blijkt bij het omzetten.
Twee dingen in de plannen van Electrum Gate waren door deze verhuizing niet meer
waar en zijn bijgewerkt: de taak "de repo hernoemen" in fase 7 is afgevinkt, en
de repo-vorm in PLAN.md §4a toonde nog de store-id electrumtls, die al sinds
fase 7 achterhaald was.
Tests: 39 goed 0 fout en 54 goed 0 fout, niets overgeslagen.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>