De pagina werkt op het apparaat, en de uitleg volgt nu de schakelaar

De hele keten is gemeten: de knop Close schreef een opdracht, de agent legde hem
in de postbus, het relay-proces paste hem toe en schreef hem weg, en de pagina las
de nieuwe toestand terug. De leerstand staat op closed en de geleerde eigenaar
staat in de lijst met eerste en laatste verschijning. Dat was het laatste stuk van
dit pakket dat nog nooit gelopen had.

Wat daarbij opviel: de uitleg onder de schakelaar bleef de open toestand
beschrijven terwijl hij dicht stond. Hij volgt nu de toestand, met een derde tekst
voor het geval de relay nog niets gemeld heeft.

Versie naar 0.2.2. De vorige stond mogelijk al geinstalleerd, en zonder verhoging
bereikt een gewijzigde template geen bestaande installatie.

Tests: test_appstore_vorm 34 goed, 0 fout.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Harmen
2026-08-28 11:51:41 +02:00
co-authored by Claude Opus 5
parent d5bbc3fc0b
commit f029144572
3 changed files with 16 additions and 5 deletions
+7 -3
View File
@@ -76,9 +76,13 @@ eromheen, want de compose hangt af van wat dat programma nodig heeft.
`evolu-relay.db` van 49152 bytes (dezelfde omvang als bij de proef van vanochtend, dus de labels zijn
geland) en `owners.json` van 241 bytes. Daarmee is de hele keten gemeten: `isOwnerAllowed` wordt
aangeroepen met iets wat het beleid begrijpt, de leerstand werkt, en de allowlist gaat naar schijf
- [ ] **De pagina en de agent op het apparaat verifiëren.** Dat deel is nog ongetest gedrag: de agent is
alleen op syntaxis gecontroleerd, de pagina is nooit gerenderd, en of een knop daadwerkelijk bij het
relay-proces aankomt is niet gemeten. **Eigenaar: gebruiker**
- [x] **De pagina en de agent op het apparaat geverifieerd (28-08-2026).** De pagina rendert, toont de
gegevens van de relay, en de knop **Close** werkt: de leerstand ging naar `closed` en de geleerde
eigenaar staat in de lijst met eerste en laatste verschijning. Daarmee is de hele keten gemeten,
pagina → agent → postbus → relay-proces → schijf → pagina
- [x] **De fout die dat opleverde is gerepareerd:** de korte containernaam `agent` is op het gedeelde
Docker-netwerk niet uniek, dus de helft van de verzoeken kwam bij Electrum Gate uit. Beide apps
wijzen nu naar `<app-id>_agent_1`, en `test_appstore_vorm.py` toetst dat voortaan
- [ ] **De app opnieuw installeren in plaats van updaten.** De gebruiker heeft de oude installatie op
28-08-2026 weggehaald; dat is ook de nette weg, want niet elk bestand bereikt een bestaande
installatie via een update
@@ -428,18 +428,24 @@ footer { color: var(--text-ter); font-size: 0.78rem; text-align: center; margin-
var learningPill = document.getElementById('learning-state');
var toggle = document.getElementById('learning-toggle');
var learningHint = document.getElementById('learning-hint');
if (status.owners.learning === true) {
setPill(learningPill, 'open', 'ok');
toggle.textContent = 'Close';
toggle.disabled = false;
learningHint.textContent = 'The next device that connects is accepted and remembered. Close '
+ 'this once your own devices are paired.';
} else if (status.owners.learning === false) {
setPill(learningPill, 'closed', 'unknown');
toggle.textContent = 'Open';
toggle.disabled = false;
learningHint.textContent = 'Devices that are not on the list below are refused. Open this only '
+ 'while you pair another device of your own, then close it again.';
} else {
setPill(learningPill, 'unknown', 'unknown');
toggle.textContent = 'Loading';
toggle.disabled = true;
learningHint.textContent = 'The relay has not reported this yet.';
}
toggle.onclick = function () {
send({ action: 'set-learning', value: status.owners.learning !== true });
+3 -2
View File
@@ -11,7 +11,7 @@ manifestVersion: 1
id: whatsnext-evolu-relay
category: files
name: Evolu Relay
version: "0.2.1"
version: "0.2.2"
tagline: Encrypted sync and backup for your local-first apps
description: >-
Local-first apps keep your data on your own device and work whether or not you have a
@@ -49,7 +49,8 @@ releaseNotes: >-
This release also drops the wording that tied the app to one particular client. It is a general
purpose Evolu relay: any app built on Evolu can use it.
purpose Evolu relay: any app built on Evolu can use it. And the explanation under the new owners
switch now matches the switch: it used to describe the open state even when it was closed.
Earlier releases: