Files
portal/runs/uhhm-2026-09-23/README.md
T
Bendik Aagaard LynghaugandClaude Fable 5.1 9e511b5b57 runs: uhhm.no from a plan, three rounds of wording
Sonnet writes, qwen3:8b routes: 16 then 19 of 27 with descriptions,
19 then 21 of 27 on headings alone. One card took seven personas
until it named redoal; what remains is on the front door and mostly
a judgment the plan could make differently, not the words.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-23 15:09:35 +02:00

3.7 KiB

uhhm.no from a plan, 2026-09-23

The live site (uhhm/questions) rebuilt from plans/uhhm.yaml: the five buckets it already holds, with their live state and event names (events: on the plan, new today), plus two new ones. trials is the client feature: a business describes how work flows through it and an owner approves the intake by hand before anything is built; the n8n workflow that builds the preview is named as attended_by and does not exist yet. custody_requests is UHHM as the custodian of the redoal network: a desk of its own for the custodians group, which owners watch and invite into.

Words by Claude Sonnet (engines/claude.sh, 142 s for 14 pages), verifier green by construction. Lifting words from the live repo (--words-from) was tried and dropped: the lift is by position, so the old front door's three headings landed on the new front door's first three cards regardless of meaning, and "Attention is earned" is the wording the 2026-09-21 run found at fault. Visitor: qwen3:8b, one task per call, shown the whole card; 15 held-out personas, the eight from runs/uhhm-2026-09-21 and seven for what is new.

Round Words With descriptions Headings only
1 (r1/) Sonnet, as built 16 of 27 19 of 27
2 (r2/) + overrides.json: the custody card and the cards behind both doors reworded by hand 19 of 27 20 of 27
3 (site/) + overrides-r3.json: the doors as who the visitor is 19 of 27 21 of 27

Round 1's defect was one card: "Get an answer from the people who keep the network" read as "contact us" and took seven personas of every kind on the front door. Naming redoal in the heading fixed that. Inside the doors, "Work with people who read the whole thing" and "Get a page fixed the way you'd write it" crossed over until they became "Work with us" and "Suggest a change to this website"; the join door has routed 3 of 3 on every question since.

What is left is the front door, and it is mostly not wording:

  • The exhibition visitor ("your drawing network") and the interaction designer ("the drawing interface") go to the redoal card. The plan says subscribe and collaborate; the visitor is not wrong.
  • The tech journalist ("what you release") and the app builder (redoal addresses in an app) go to the build door. Fair either way.
  • On /build, the architecture firm and the climbing gym pick "See your own business as a site, before you buy anything" over the brief, with descriptions. A paying client who wants to see first is the trial's whole point; if the plan should say so, make the trial the door for both and the brief a field.
  • The dance school lands three different places in three rounds: the visitor model's noise floor, not the page.

rate on round 3: LIX 19 to 33 (very easy to easy) on every page, against 25 to 35 for the earlier contractor build. Behind the doors, which/where/asked/next are full marks on every page and every control passes. On the front door, "which" is 1 of 3 for the brief and 1 of 2 for the trial and the proposal: a door heading cannot say what each card behind it says.

Before the branch (uhhm/questions trainer-rebuild) merges: the site runs portal v0.3.36 and invite:/attended_by need v0.3.40 or later, so the branch bumps PORTAL_RELEASE and IRIS_RELEASE to v0.3.42; the custodians group has to exist in id.uhhm.no; invites need KANIDM_API_TOKEN in the repo's secrets, or the two invite forms fail closed with a message; and any unsubscribe link already sent by the newsletter points at /subscribed, which is now /decide/subscribe.

Files: score.sh runs the whole scoring; tasks-*.jsonl, answers-*.jsonl, model.json, rated/ are round 3's; words-r3.json is the words as used, the next rebuild starts from it with --words.