Files
UmbrelApps/.gitignore
T
HarmenandClaude Opus 5 de955b607d Testclient fase 1: er is geen Evolu-client voor Node, dus die stellen we samen
Het plan is gepromoveerd naar Actief/003-Testclient en tier A, en fase 1 is af.

De uitkomst die het plan als eerste wilde weten: @evolu/nodejs 3.1.0 bevat geen
client. Het pakket levert de relay plus losse bouwstenen, maar er is geen
createEvoluDeps voor Node zoals @evolu/web die voor de browser heeft. De
afhankelijkheden voor createEvolu worden nu samengesteld in
tools/relay-client/src/evolu-node.js, uit de in-memory workers van
@evolu/common; src/client.js is de publieke kant met eigenaars en blobs.

Vier dingen zaten in de weg en alle vier faalden ze stil, met een instantie die
het lijkt te doen tot de eerste schrijfactie: de ontbrekende installPolyfills
(Node 24 mist Map.getOrInsertComputed), createEvoluDeps overslaan, de
AsyncDisposableStack van initSharedWorker laten vallen, en workers zonder eigen
reportDefect. Dat laatste is waarom de andere drie te vinden waren. Uitgeschreven
in PLAN.md 4e.

tests/test_client_lokaal.mjs schrijft daarom een blob weg en leest hem terug in
plaats van alleen een instantie te maken, en heeft een wachthond: bij een defect
in een worker blijft de suite anders hangen in plaats van rood te worden, en dat
gebeurde bij de mutatietoets letterlijk. Beide mutaties lieten de juiste toets
omvallen.

Nog niet geprobeerd: praten met de relay. Daarvoor is het adres van de Umbrel
nodig en dat komt van de gebruiker; het gaat niet in deze publieke repo.

Suite: 405 goed, 0 fout over alle acht de toetsen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-09 12:59:55 +02:00

85 lines
3.4 KiB
Plaintext

# ── Geheimen: nooit in de repo ────────────────────────────────────────────────
# Deze repo wordt publiek, want umbreld kloont een community app store anoniem.
# Certificaten en sleutels horen bij Zoraxy op de Umbrel en komen hier nooit in,
# ook niet "even om te testen".
*.pem
*.key
*.crt
*.p12
*.pfx
secrets/
.env
.env.local
.env.*.local
.env.*
!.env.sample
# ── Data: nooit in de repo, en niet inlezen ───────────────────────────────────
# Evolu Relay krijgt een Postgres, en de proefopstelling zet lokaal een datamap
# neer. Die hoort nergens in een repo thuis, ook niet in een private, en hij
# wordt ook niet ingelezen: HomeGit/CLAUDE.md, "Data van de gebruiker".
pgdata/
postgres-data/
*.sqlite
*.sqlite3
*.db
*.dump
*.sql.gz
# ── Runtime-toestand van de app ───────────────────────────────────────────────
.cert-timestamp
status.json
*.pid
*.log
# ── Werkbestanden ─────────────────────────────────────────────────────────────
*.tmp
tmp/
temp/
*.bak
*.backup
*~
# ── Editor en OS ──────────────────────────────────────────────────────────────
.vscode/
.idea/
*.sublime-*
*.swp
*.swo
.DS_Store
Thumbs.db
# ── Claude Code: lokale instellingen zijn per machine ─────────────────────────
.claude/settings.local.json
# ── Bouwsel ───────────────────────────────────────────────────────────────────
dist/
build/
*.tar.gz
*.zip
# ── Node ──────────────────────────────────────────────────────────────────────
# Zowel tools/evolu-relay/ als tools/relay-client/ hebben een package.json. Wat
# daar geïnstalleerd wordt hoort niet in de repo: de relay bouwt in zijn image en
# de testcliënt installeert lokaal.
node_modules/
# De gegevens van de testcliënt: per eigenaar een mnemonic en een database. Dit
# is sleutelmateriaal, en ook al heeft het buiten de proefopstelling geen waarde,
# een publieke repo is er geen plek voor.
tools/relay-client/data/
tools/relay-client/spike-data/
# ── Python ────────────────────────────────────────────────────────────────────
# De test importeert tools/electrum-gate/agent.py als module, en Python legt daar
# dan bytecode naast. De test zet dat zelf uit, maar dit is de vangnetregel: zo'n
# .pyc glipte een keer mee in een commit.
__pycache__/
*.py[cod]
# De uitvoer van tools/voorbeeldpagina.mjs: een statuspagina met de variabelen
# ingevuld en nagemaakte gegevens erin, om in een browser te bekijken. Genereerbaar
# uit de template, dus er is niets te bewaren, en het zou een tweede versie van de
# pagina in de repo zetten die stilzwijgend achterloopt.
voorbeeld/