Regenerated from the plan with every existing word lifted back out of
this repo (the diff is additions only): each committee's desk invites
into itself, styret's desk into every group, and each inviting desk
lists the invites it sent (portal_invites, open -> done). Portal
creates the account, the group membership and a one-time credential
link; the desk shows the link to pass on. Needs portal 0.3.40+ on the
instance and KANIDM_API_TOKEN in its env. Lint pinned to iris 0.3.41.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01L4jrCgLiKKHAEFuZUJjckH
Rebuilt from the updated plan: the seven committees are the desk
groups and the committee application picks any of them; traffic
reports, playground faults and the noticeboard have a public read-only
list under /status without contact details; helpers and volunteers
tick several options; hearing input sits on the front door.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
portal-trainer build of 2026-09-23 from plans/tomtervel.yaml, Claude
Sonnet writing the words. Every alternative now carries a button label,
an encouragement, an icon, two context sections built from the plan
(the stages a case goes through, and who reads it) and placeholders
on the fields. Scored 32 of 40 with descriptions, 29 of 40 headings
only, against held-out personas.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Washed-yellow page, black text, the vel's blue (#1785c2) for the
question banner and buttons, light-yellow link hovers, the title at
the site's slight skew. Wordmark and favicon are the site's own files.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Built by portal-trainer from plans/tomtervel.yaml (uhhm/portal-trainer),
structure from the plan, words by Claude Sonnet. Four doors on the
front page, seven group desks, needs.yaml as the spec the lint holds
the pages to.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>