Relay 0.7.1: de teller in de kop, en de tegenspraak in About eruit

De teller met wachtenden heette ook "Waiting" en zei hetzelfde als het kader met
de lijst. Het aantal staat nu in de kop van dat kader, met de regel eronder
erbij; bij nul staat er geen getal, want de lijst zegt dan al "None." De plek in
de bovenste rij blijft leeg, op verzoek van de gebruiker: schuiven de andere
drie op, dan verliest "Status" de rechterkolom.

Met de adresregel weg viel op dat "About this app" eiste dat het sync-adres met
http begint en niet met ws, terwijl het kader onderaan ws:// toont. Beide
beweringen waren waar: de relay spreekt WebSocket, en het veld van Trezor Suite
neemt http(s)://, gemeten op 28-08-2026. Wat eruit moest was dus de eis. Er
staat nu dat het van de app afhangt, met dezelfde host en poort in beide
vormen, en de regel over wss:// zonder poort staat bij de alinea over van buiten
verbinden.

Nagekeken in voorbeeld/: de widget is weg met de lege plek op zijn positie, de
kop leest "Waiting 2", en het getal verdwijnt met de hidden-klasse.

Nog steeds 0.7.1 en nog niet gebouwd, dus de compose blijft zonder digest.

Suite groen: 22, 42, 90, 36, 54 en 68 goed, 0 fout.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Harmen
2026-09-10 10:01:15 +02:00
co-authored by Claude Opus 5
parent 090843a523
commit 56918ed2d4
5 changed files with 67 additions and 33 deletions
+11
View File
@@ -37,6 +37,17 @@ Vier dingen aan de twee eigenaarskaders, alle vier op verzoek van de gebruiker n
- **Elke rij is even hoog, in alle lijsten.** Een rij werd hoger op het moment dat je hem een naam gaf,
want het label duwde het id naar een eigen regel; het id staat nu op de onderregel bij de tijden. Een
waarde die niet past wordt afgekapt met een puntje en staat volledig in de tooltip.
- **De teller met wachtenden is uit de bovenste rij en staat nu in de kop van het kader**, met de regel
eronder ("one owner wants in…") erbij. Twee kaders die "Waiting" heten zeiden hetzelfde. De plek in de
bovenste rij blijft leeg, op verzoek van de gebruiker: schuiven de andere drie op, dan verliest "Status"
de rechterkolom. Bij nul wachtenden staat er geen getal, want de lijst zegt dan al "None."
En één tegenspraak eruit die door de weggehaalde adresregel opviel: **"About this app" eiste een adres dat
met `http` of `https` begint en niet met `ws`,** terwijl het kader onderaan sinds 0.7.0 `ws://` toont.
Beide waren waar. De relay spreekt WebSocket, en het veld van Trezor Suite neemt `http(s)://`; dat is op
28-08-2026 gemeten en staat in het plan **Umbrelapp**, `TAKEN.md`. Wat eruit moest was dus de eis: er staat
nu dat het van de app afhangt, met dezelfde host en poort in beide vormen. De regel over `wss://` zonder
poort is meeverhuisd naar de alinea over van buiten verbinden.
## 0.7.0 - 09-09-2026
@@ -14,6 +14,13 @@ list" heten "Accepted" en "Waiting", de badge "Waiting" is weg en de regel onder
badge kon eruit zonder verlies, want het onderscheid waarvoor hij er was blijft staan: een geblokkeerde
eigenaar is nu precies de regel mét badge.
**Twee gevolgen van dat opruimen, allebei door de gebruiker gezien.** De teller bovenaan heette óók
"Waiting" en zei hetzelfde als het kader met de lijst; het aantal staat nu in de kop van dat kader en de
plek bovenaan blijft leeg, zodat "Status" de rechterkolom houdt. En met de adresregel weg viel op dat
"About this app" eiste dat het adres met `http` begint, terwijl het kader `ws://` toont. Beide beweringen
waren waar: de relay spreekt WebSocket, en het veld van Trezor Suite neemt `http(s)://`, gemeten op
28-08-2026. Wat eruit moest was dus de eis en niet een van de twee vormen.
**Het vierde punt was echt werk: elke rij is nu even hoog.** Een rij werd hoger op het moment dat je hem
een naam gaf, want het label duwde het id naar een derde regel. Nu deelt het id de onderregel met de
tijden. Een vaste hoogte in CSS zou hetzelfde lijken te doen, maar laat witruimte achter onder een rij
+6 -3
View File
@@ -29,9 +29,12 @@
werd hoger op het moment dat je hem een naam gaf, want het label duwde het id naar een derde regel;
het id staat nu bij de tijden op de onderregel, afgekapt met een puntje en volledig in de tooltip.
Verder: "Accepted owners" en "Waiting list" heten "Accepted" en "Waiting", de badge "Waiting" is weg
(een geblokkeerde eigenaar is nu precies de regel mét badge) en de regel onder het adres is weg.
Nagekeken in `voorbeeld/`: alle vijf de rijen zijn 68px, ook tijdens het labelen. **Op het apparaat
nog ongezien**, want er is geen image
(een geblokkeerde eigenaar is nu precies de regel mét badge), de regel onder het adres is weg, en de
teller met wachtenden staat in de kop van dat kader in plaats van in een widget bovenaan; die plek
blijft leeg zodat "Status" de rechterkolom houdt. Ook eruit: **de eis in "About this app" dat het
adres met `http` moet beginnen**, die het kader onderaan tegensprak. Beide waren waar, dus wat eruit
moest was de eis. Nagekeken in `voorbeeld/`: alle vijf de rijen zijn 68px, ook tijdens het labelen.
**Op het apparaat nog ongezien**, want er is geen image
- [x] **0.7.0 gebouwd, geduwd en gepind (10-09-2026, gebruiker).** De digest staat drie keer in de
compose. Bij het duwen liep de gebruiker eerst op `unauthorized: reqPackageAccess`; dat is de
packages-rechtencontrole van Gitea en geen fout in dit pakket
+35 -27
View File
@@ -431,6 +431,11 @@ body {
color: var(--accent);
}
/* Het aantal wachtenden, in de kop van dat kader. Kleiner en grijzer dan de kop
zelf: het is een telling en geen tweede kop. Bij nul staat er niets, want dan
zegt de lijst eronder al "None." */
.head-count { margin-left: 0.5rem; font-size: 0.85rem; font-weight: 500; color: var(--text-sec); }
/* ── Lijstregels ────────────────────────────────────────────────────────── */
.list-item {
display: flex; justify-content: space-between; align-items: center;
@@ -731,19 +736,13 @@ body.is-busy .list-item button { cursor: progress; }
</div>
</div>
<!-- Hoeveel eigenaars er op een beslissing wachten.
Tot 0.6.0 stond hier het tijdvenster voor nieuwe eigenaars, met een
knop om het twee minuten open te zetten. Dat is eruit in 0.7.0: er is
nog één weg naar binnen, en dat is de wachtlijst hieronder. Twee wegen
was dubbelop, en het venster was de zwakste van de twee omdat het
iederéén toeliet die er toevallig in verbond. -->
<div class="card">
<div class="card-head"><h2 class="t-h3">Waiting</h2></div>
<div class="stat-body">
<div class="stat-val text unknown" id="waiting-state">unknown</div>
<div class="stat-sub" id="waiting-sub"></div>
</div>
</div>
<!-- Een lege plek, met opzet, op verzoek van de gebruiker (10-09-2026).
Hier stond tot 0.6.0 het tijdvenster voor nieuwe eigenaars en in 0.7.0
een teller met wachtenden. Die teller is eruit: het kader eronder heet
"Waiting" en heeft het aantal nu in zijn kop, dus de widget zei het
dubbel. De plek blijft leeg in plaats van dat de andere drie opschuiven,
want dan houdt "Status" de rechterkolom; zie de uitleg hieronder. -->
<div></div>
<!-- De statuswidget staat RECHTS en niet links (keuze gebruiker,
31-08-2026), gelijk aan Electrum Gate. Twee redenen die samenvallen:
de twee pagina's horen naast elkaar te lezen als één store, en dit is
@@ -782,7 +781,10 @@ body.is-busy .list-item button { cursor: progress; }
heet in owners.json nog `rejected`; hernoemen zou een migratie zijn voor
een woord dat niemand ziet. -->
<div class="card col-6">
<div class="card-head"><h2 class="t-h3">Waiting</h2></div>
<!-- Het aantal staat in de kop en niet meer in een eigen widget bovenaan. -->
<div class="card-head">
<h2 class="t-h3">Waiting<span class="head-count hidden" id="waiting-count"></span></h2>
</div>
<div id="refused"></div>
</div>
@@ -839,15 +841,24 @@ body.is-busy .list-item button { cursor: progress; }
</p>
<h3>Pointing an app at it</h3>
<!-- Hier stond tot 0.7.1 dat het adres met http of https moet beginnen en
niet met ws. Dat sprak het kader onderaan tegen, dat sinds 0.7.0
`ws://` toont. Beide waren waar: de relay spreekt WebSocket, en het
veld van Trezor Suite neemt `http(s)://`, gemeten op 28-08-2026. Wat
eruit moest was de eis, niet de vorm. -->
<p>
Set the address at the bottom of this page as the sync address in your app. Some apps only
offer the field in their developer or advanced settings. The address has to start with
<strong>http</strong> or <strong>https</strong>, not ws, even though the connection itself is
a websocket: the client works that out on its own.
offer the field in their developer or advanced settings. Which scheme that field wants
depends on the app: <strong>ws://</strong> as shown below, or <strong>http://</strong>,
which some apps expect because the websocket starts as an HTTP request and they work the
rest out themselves. Same host and same port either way, so try the other one if the first
is refused.
</p>
<p>
Away from home you will need a way in, such as Tailscale or a reverse proxy with your own
domain.
domain. Behind a proxy with a certificate the address becomes <strong>wss://</strong> (or
https) on your own domain, without a port number: the proxy listens on 443 and forwards to
this one.
</p>
<h3>Who may use it</h3>
@@ -1371,16 +1382,13 @@ body.is-busy .list-item button { cursor: progress; }
], 'None.');
}
// De teller met wachtenden. Dit is de plek waar tot 0.6.0 het tijdvenster
// stond; nu telt hij wie er op een beslissing wacht, want dat is sinds
// 0.7.0 de enige weg naar binnen.
// Het aantal wachtenden, in de kop van dat kader. Tot 0.7.0 was dit een
// eigen widget bovenaan met een regel eronder; die zei hetzelfde als het
// kader waar de lijst in staat.
var wachtend = (status.owners.rejected || []).length;
put('waiting-state', String(wachtend));
el('waiting-state').classList.remove('unknown');
el('waiting-sub').textContent = wachtend === 0
? 'nobody is asking to get in'
: (wachtend === 1 ? 'one owner wants in; allow it below if it is yours'
: 'owners want in; allow the ones you recognise below');
var teller = el('waiting-count');
teller.textContent = String(wachtend);
teller.classList.toggle('hidden', wachtend === 0);
if (status.owners.problem === 'onleesbaar') {
show('alert-owners', 'The list of owners could not be read and was moved aside. Everyone is '
+8 -3
View File
@@ -43,9 +43,10 @@ description: >-
your app at the address shown there. Away from home you will need a way in, such as Tailscale
or a reverse proxy with your own domain.
releaseNotes: >-
Tidying up the two owner panels. They are called Accepted and Waiting now, the note under the relay
address is gone, and a row on the waiting list no longer carries a "Waiting" tag: the panel it sits in
already says that, and a blocked owner is now the only row with a tag.
Tidying up the two owner panels. They are called Accepted and Waiting now, the count of owners waiting
sits in that panel's own heading instead of a widget at the top, the note under the relay address is
gone, and a row on the waiting list no longer carries a "Waiting" tag: the panel it sits in already says
that, and a blocked owner is now the only row with a tag.
Every row is the same height as well, in both panels. A row used to grow the moment you gave it a
@@ -53,6 +54,10 @@ releaseNotes: >-
with the timestamps.
About this app no longer insists the sync address must start with http. Which scheme the field in your
app wants depends on the app; the host and the port are the same either way.
Everything in 0.6.0: