Changeset df70d8e in Klonkt for tools/ward-farm/offer-many.mjs


Ignore:
Timestamp:
08/08/2026 09:47:27 PM (4 weeks ago)
Author:
roboburr <roboburr@…>
Branches:
main
Children:
1d76e0e
Parents:
f3c7a05
git-author:
Robin <roboburr@…> (08/08/2026 09:47:26 PM)
git-committer:
roboburr <roboburr@…> (08/08/2026 09:47:27 PM)
Message:

Het Offer IS de toestemming van de kandidaat (shaer-6wt)

Uitgezocht, en de fout was van mij. Ik gaf gisteren een "lead" af naar
handshake.js regel 600 -- de inkomende accept-tak die geen fanout doet. Die lead
was onjuist en ik trek hem terug.

Klonkt zegt het met zoveel woorden, en die regel had ik moeten lezen voordat ik
naar zijn code wees:

"The Offer carries the candidate's agreement -- a free ward then commits on

its own accept."

De afsluitende Accept van de kandidaat waar mijn daemon op wachtte, komt bij een
VRIJE ward nooit, en dat hoort ook niet. Dev deed precies wat het moest doen; de
daemon bleef wachten op iets dat het protocol niet stuurt. Dat verklaart ook @mee
meteen: haar Klonkt implementeert dit goed en committeerde op haar eigen ja.

De daemon telt nu echt. Partijen zijn de kandidaat, de ward zelf en de bestaande
guardians uit to; de kandidaat staat er meteen als ja in. Committen als
IEDEREEN ja heeft gezegd -- niet "commit bij mijn eigen ja", want dat werkt voor
de eerste guardian en is stilletjes fout voor de tweede. Wat nog ontbreekt wordt
gelogd, zodat een half afgemaakte handshake zichtbaar is in plaats van stil.

En de telling in offer-many: 202 is hier de NORMALE uitkomst, geen mislukking.
Het scherm zei "verstuurd 0" terwijl alles goed ging, en een verzonnen
mislukking is net zo verwarrend als een verzwegen fout.

RESULTAAT: 100 wards, beide kanten eens, over http met HTTP-signatures en zonder
TLS. Eerste meting van de caseload: 1414 poortrijen in 26 ms, maar de wards-queue
die de apps elke verversing ophalen is 222 KB.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tools/ward-farm/offer-many.mjs

    rf3c7a05 rdf70d8e  
    6969  try {
    7070    const uit = await AP.ingestOutboxActivity(site, { id: site.owner_id, username: slug }, activity);
    71     if (uit && (uit.status === 201 || uit.status === 200)) gestuurd++;
     71    // 202 is hier de NORMALE uitkomst: de handshake is aangenomen en loopt, de
     72    // commit valt pas als de ward antwoordt. Ik telde hem als mislukt, en de
     73    // eindregel zei daardoor "verstuurd 0" terwijl alles goed ging -- een
     74    // verzonnen mislukking is net zo verwarrend als een verzwegen fout.
     75    if (uit && uit.status >= 200 && uit.status < 300) gestuurd++;
    7276    else { mislukt++; console.warn(`  ${naam}: ${uit && uit.status} ${uit && uit.error}`); }
    7377  } catch (e) {
Note: See TracChangeset for help on using the changeset viewer.