Files
portal/runs/permits-plan-2026-09-30/README.md
T
Bendik Aagaard LynghaugandClaude Fable 5.1 3dabcf7c58 build: one page holds every need that answers a record; runs: the kommune planned again by Opus
Two needs about the same record wrote the same page, and the last won.
The record's page now holds one form per answering need, under
words["forms"][need].

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GT37Z1Xtfd9pUuQtMTg6Yt
2026-09-30 08:58:55 +02:00

44 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Vestmark kommune, planned again by Opus after the September additions
`portal-trainer plan --intake intakes/building-permits.yaml --personas
intakes/building-permits-personas.yaml --llm "MODEL=opus EFFORT=medium
engines/claude.sh" --rounds 3`, on 2026-09-30, after the guidance
learnt to name records that answer records (`about`), members-only
needs (`door` + `enters_as`), a group contact, and `grants` as the
moment of membership. The plan came out of round 1 and passed the
builder's checks; rounds 2 and 3 were not needed.
Side by side with the hand-written `plans/building-permits.yaml`
(2026-09-25, before any of those existed):
| | hand-written | Opus, this run |
|---|---|---|
| needs / groups / doors | 14 / 5 / 2 | 14 / 4 / 2 |
| needs `about` another | – | 3: objection, appeal, exemption, all about the application |
| `grants` | – | firm approval lists the firm in `approved_firms` |
| members-only (`door` + `enters_as`) | – | 3: a firm's application, completion certificate, temporary permission, for `approved_firms` |
| `deadlines` | – | 4, incl. the six-week hearing |
| public lists | 6 | 3 |
| `reached_from` | 3 | 3 |
So the new lines were taken up unprompted, and for the right things: an
objection belongs to the application it objects to, and a firm files
because it was approved. What Opus did not carry over from the intake:
the counter's own needs (`log-counter-enquiry`, `case-status-enquiry`),
which two personas name; and the external agencies as a group of their
own, folded into the case officers instead.
## What the run found in the tools
- **The builder wrote one answer page per answering need**, at the
same path, so with three needs about the application only the last
survived and iris found no path for the others. A record's page now
holds one form per need about it (`words[...]["forms"][need]`).
- **iris counted the carried record id as effort.** An objection form
that carries the application's id was one field over its budget.
iris main (with portal v0.5.7) counts what a person fills in.
With both fixed the site lints clean but for the two personas above:
37 questions, 15 aggregates, 225 access rules, 12 of 14 needs met.
Not built with words, not deployed.